2013-07-14 67 views
-1

我有一個大的時間序列,H合併兩個時間序列中的R

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「的動物園」包,但我t也拋出一個錯誤的時間序列(= 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 

任何想法/清楚的解釋來解決?提前致謝。

+0

不只是這項工作 '合併(H,MWL,通過= 「DT」)' 你唯一可能需要更改'H'和'mWL'中的數據幀將日期更改爲'POSIXct'。 –

+0

谷歌在搜索「合併時間序列」時在此處指示。我認爲這可能會影響各種問題和各種答案的價值和流量。 – EngrStudent

回答

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