2

可能重复:
R 分组函数:sapply vs. lapply vs. apply。vs. tapply vs. by vs. aggregate vs

我有一个模型输出文件,如下所示:

run step x
1    1    1
1    2    4
1    3    3
1    1    4 
1    2    5
1    3    6
2    1    5
2    2    4
2    3    7
2    1    3

. . . 我需要根据运行号计算每个步骤的平均值。我该怎么做?非常感谢任何可以帮助我的人。中提琴

4

2 回答 2

3

如果我理解正确,这可以使用 plyr 包中的 ddply 来完成:

require(plyr)
ddply(model_output, .(run, step), summarise, mn = mean(x))

model_output您从文件中读取的模型输出在哪里。

于 2012-12-03T22:05:50.070 回答
0

或基本 R 版本:

aggregate(test["x"],test[c("run","step")],mean)

  run step   x
1   1    1 2.5
2   2    1 4.0
3   1    2 4.5
4   2    2 4.0
5   1    3 4.5
6   2    3 7.0
于 2012-12-03T23:16:45.123 回答