考虑以下动物园对象:
x <- data.frame(Date = seq(as.Date("2013-02-01"), length=6, by="1 month") - 1, x = seq(6))
y <- data.frame(Date = seq(as.Date("2013-02-01"), length=4, by="1 month"), y = seq(4))
z <- data.frame(Date = seq(as.Date("2012-11-01"), length=9, by="1 month"), z = seq(9))
x.zoo = zoo(x[,-1], order.by = x[,1])
y.zoo = zoo(y[,-1], order.by = y[,1])
z.zoo = zoo(z[,-1], order.by = z[,1])
请注意,这 3 个动物园对象的长度不同。我想将所有对象与变量“x”的日期对齐:换句话说,我想创建一个包含日期列(对象 x 的索引)的新数据框,并用最接近的填充每个变量可用的观察。
这是我正在寻找的结果:
Date x y z
1 2013-01-31 1 1 4
2 2013-02-28 2 2 5
3 2013-03-31 3 3 6
4 2013-04-30 4 4 NA
5 2013-05-31 5 NA NA
6 2013-06-30 6 NA NA
请注意,实际上,我有 10 个变量要与 x 对齐。我知道包中的功能na.locf
,zoo
但我不确定如何在多个动物园对象的上下文中调整它。
无论如何我可以有效地做到这一点吗?
谢谢!