计算R中几个向量的平均值

时间:2014-08-20 21:06:14

标签: r average

我有四个向量:

a<-c(1,2,3,4,5)
b<-c(2,3,4,5,6)
c<-c(3,5,6,7,2)
d<-c(5,7,3,7,2)

我想计算平均值,以便得到:

average
2.75 4.25 4.00 5.75 3.75

有人可以就如何做到这一点给我一个建议吗? 谢谢。

2 个答案:

答案 0 :(得分:2)

mapply的解决方案:

mapply(function(...) mean(c(...)), a, b, c, d)

Reduce的解决方案:

l <- list(a,b,c,d)
Reduce(`+`, l) / length(l)

sapply的解决方案:

l <- list(a,b,c,d)
sapply(seq_along(a), function(i) mean(sapply(l, function(x) x[i])))

答案 1 :(得分:1)

将它们放在矩阵中并使用rowMeans

a<-c(1,2,3,4,5)
b<-c(2,3,4,5,6)
c1<-c(3,5,6,7,2)
d<-c(5,7,3,7,2)
rowMeans(matrix(c(a,b,c1,d), ncol=4))
## [1] 2.75 4.25 4.00 5.75 3.75