我從服務器中檢索一些數據,並獲取大約200個不同長度的時間序列對象。這是不可操作的,所以想將它們合併成一個對象,並在沒有可用數據的位置寫入NA。同樣對於每個系列我都有一個以上的變量。我嘗試了一個循環,但仍然不起作用,必須有一個更優雅的方式來排序。比如假設我有以下幾點:如何合併許多不同長度的時間序列R
library(zoo)
a=zoo(matrix(rnorm(300), 100, 3),Sys.Date()-100:1)
b=zoo(matrix(rnorm(375), 125, 3),Sys.Date()-125:1)
c=zoo(matrix(rnorm(525), 175, 3),Sys.Date()-175:1)
d=zoo(matrix(rnorm(450), 150, 3),Sys.Date()-150:1)
e=list(a,b,c,d)
z=do.call(merge,e)
編輯:這個作品
@Joshua Ulrich感謝您的回覆。是的,這個例子的作品,但請注意,我正在檢索超過200個系列。如果沒有其他辦法,我會這樣做,但也許有創建一個列表或類似的替代方案。 – nopeva 2013-04-23 19:39:25
如果'file.names'是一個包含文件名的字符向量,那麼'z < - read.zoo(file.names,...其他參數...)'會將它們全部讀入併合並它們以產生'z '。 – 2013-04-23 20:21:13