想象一下,我有一个包含2列的数据框
Id Value
12 13
32 3
6022 11
9142 231
12 23
119 312
...
我希望获得每个“Id”的平均值。你知道有什么快速的方法吗?
答案 0 :(得分:5)
使用aggregate
的一种可能解决方案:
aggregate(Value ~ Id, data=tmp, FUN=mean)
答案 1 :(得分:2)
我心脏重塑:
cast(x, Id ~ ., mean)
答案 2 :(得分:2)
为了完整性,基本解决方案是tapply
:
tapply(data$Value, data$Id, mean)
(或使用with
作为with(data, tapply(Value, Id, mean))
)
答案 3 :(得分:1)
除了聚合,其他选项包括by和ddply(在plyr中)。
答案 4 :(得分:0)
同样by
将完成这项工作,但输出会很棘手。