平均两个具有相同索引的Zoo矢量?

时间:2011-07-06 21:57:53

标签: r zoo

假设我有两个“动物园”向量,长度相等,两者的索引相同。

是否有一个简单的函数可以让我按日期(索引)取两者的平均值?

谢谢!

2 个答案:

答案 0 :(得分:4)

这是一个解决方案,它只添加两个并除以2:

R> a <- zoo(1:10, Sys.Date()+0:9)
R> b <- zoo(10:1, Sys.Date()+0:9)
R> z <- (a + b) / 2
R> merge(a, b, z)
            a  b   z
2011-07-06  1 10 5.5
2011-07-07  2  9 5.5
2011-07-08  3  8 5.5
2011-07-09  4  7 5.5
2011-07-10  5  6 5.5
2011-07-11  6  5 5.5
2011-07-12  7  4 5.5
2011-07-13  8  3 5.5
2011-07-14  9  2 5.5
2011-07-15 10  1 5.5
R> 

答案 1 :(得分:2)

我不相信有一个功能,但使用apply很容易:

set.seed(21)
z1 <- zoo(rnorm(10), Sys.Date()-10:1)
z2 <- zoo(rnorm(10), Sys.Date()-10:1)
z <- merge(z1,z2)
z$z3 <- apply(z,1,mean)