-1

我有一个大的时间序列,H

head(H)
                 time      e1
1 2012-11-15 00:00:00 14.5640
2 2012-11-15 00:20:00 14.5682
3 2012-11-15 00:40:00 14.5670
4 2012-11-15 01:00:00 14.5665
5 2012-11-15 01:20:00 14.5690
6 2012-11-15 01:40:00 14.5687
... ...

和一个小的(mWL)

                   dt       Date     Time    Q1    Q2    R1    R2 S1 S2 S3    N1    N2     O    T1    T2    T3    T4  M1.1  M1.4 M1.4A
1 2013-04-17 12:00:00 17/04/2013 12:00:00    NA    NA    NA    NA NA NA NA    NA    NA    NA 4.083 4.193 4.325 5.167    NA    NA    NA
2 2013-04-17 13:20:00 17/04/2013 13:20:00    NA    NA    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA    NA 4.886 6.227 6.183
3 2013-04-17 15:20:00 17/04/2013 15:20:00    NA    NA 4.107 4.167 NA NA NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA
4 2013-04-17 15:40:00 17/04/2013 15:40:00 5.833 6.405    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA
5 2013-04-17 17:00:00 17/04/2013 17:00:00    NA    NA    NA    NA NA NA NA    NA    NA 6.957    NA    NA    NA    NA    NA    NA    NA
6 2013-04-17 17:20:00 17/04/2013 17:20:00    NA    NA    NA    NA NA NA NA 6.088 7.307    NA    NA    NA    NA    NA    NA    NA    NA
   M1.6 B3 B4 B5 B6 B7 B8 B9 C.1 C.2 C.3 C.4 C.5 F.1 F.2 F.3 F.4 F.5 F.6
1    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
2 6.225 NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
3    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
4    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
5    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
6    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA

当我尝试合并 H 和 mWL 时,合并的 HmW 数据帧显示 H 的每个 e1 值的重复,实际上并没有根据时间合并:

HmW<-merge(mWL, head, join='inner')

dt       Date     Time    Q1    Q2    R1    R2 S1 S2 S3    N1    N2     O    T1    T2    T3    T4  M1.1  M1.4 M1.4A
1 2013-04-17 12:00:00 17/04/2013 12:00:00    NA    NA    NA    NA NA NA NA    NA    NA    NA 4.083 4.193 4.325 5.167    NA    NA    NA
2 2013-04-17 13:20:00 17/04/2013 13:20:00    NA    NA    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA    NA 4.886 6.227 6.183
3 2013-04-17 15:20:00 17/04/2013 15:20:00    NA    NA 4.107 4.167 NA NA NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA
4 2013-04-17 15:40:00 17/04/2013 15:40:00 5.833 6.405    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA
5 2013-04-17 17:00:00 17/04/2013 17:00:00    NA    NA    NA    NA NA NA NA    NA    NA 6.957    NA    NA    NA    NA    NA    NA    NA
6 2013-04-17 17:20:00 17/04/2013 17:20:00    NA    NA    NA    NA NA NA NA 6.088 7.307    NA    NA    NA    NA    NA    NA    NA    NA
   M1.6 B3 B4 B5 B6 B7 B8 B9 C.1 C.2 C.3 C.4 C.5 F.1 F.2 F.3 F.4 F.5 F.6     e1
1    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
2 6.225 NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
3    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
4    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
5    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
6    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 14.564
... ...
... ...

我尝试使用 R 的“动物园”包,但它也会为时间序列之一引发错误 (=H)

mWL<- read.zoo(mWL, tz="")    
Hsort<- read.zoo(H, tz="")
    Warning message:
    In zoo(rval3, ix) :
      some methods for “zoo” objects do not work if the index entries in ‘order.by’ are not unique

任何想法/明确的解释来解决?提前致谢。

4

1 回答 1

0

以下步骤解决了它:

#make the mWL into XTS
myXTS <- as.xts(mWL, order.by=as.POSIXct(strptime(paste(mWL$Date, mWL$Time),format = "%d/%m/%Y %H:%M:%S")))
#then merge with the existing time-series
HmW<-merge(myXTS, H, join='inner')

head(HmW)
                    Date Time    Q1    Q2    R1    R2 S1 S2 S3    N1    N2     O    T1    T2    T3
2013-04-17 12:00:00   NA   NA    NA    NA    NA    NA NA NA NA    NA    NA    NA 4.083 4.193 4.325
2013-04-17 13:20:00   NA   NA    NA    NA    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA
2013-04-17 15:20:00   NA   NA    NA    NA 4.107 4.167 NA NA NA    NA    NA    NA    NA    NA    NA
2013-04-17 15:40:00   NA   NA 5.833 6.405    NA    NA NA NA NA    NA    NA    NA    NA    NA    NA
2013-04-17 17:00:00   NA   NA    NA    NA    NA    NA NA NA NA    NA    NA 6.957    NA    NA    NA
2013-04-17 17:20:00   NA   NA    NA    NA    NA    NA NA NA NA 6.088 7.307    NA    NA    NA    NA
                       T4  M1.1  M1.4 M1.4A  M1.6 B3 B4 B5 B6 B7 B8 B9 C.1 C.2 C.3 C.4 C.5 F.1 F.2
2013-04-17 12:00:00 5.167    NA    NA    NA    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
2013-04-17 13:20:00    NA 4.886 6.227 6.183 6.225 NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
2013-04-17 15:20:00    NA    NA    NA    NA    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
2013-04-17 15:40:00    NA    NA    NA    NA    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
2013-04-17 17:00:00    NA    NA    NA    NA    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
2013-04-17 17:20:00    NA    NA    NA    NA    NA NA NA NA NA NA NA NA  NA  NA  NA  NA  NA  NA  NA
                    F.3 F.4 F.5 F.6      e1
2013-04-17 12:00:00  NA  NA  NA  NA 11.6286
2013-04-17 13:20:00  NA  NA  NA  NA 11.6253
2013-04-17 15:20:00  NA  NA  NA  NA 11.6283
2013-04-17 15:40:00  NA  NA  NA  NA 11.6271
2013-04-17 17:00:00  NA  NA  NA  NA 11.6319
2013-04-17 17:20:00  NA  NA  NA  NA 11.6321
于 2013-07-14T04:42:13.937 回答