获取 R 中均值子组的均值

Ste*_*ano 1 aggregate r mean plyr

我是 R 的新手,我不知道如何让 R 计算子组的平均值,而子组本身就是子组的平均值。我会解释得更清楚。

我有一个像这样的数据框:

GROUP WORD WLN
1     1    4
1     1    3
1     1    3
1     2    2
1     2    2
1     2    3
2     3    1
2     3    1
2     3    2
2     4    1
2     4    1
2     4    1
...   ...  ...
Run Code Online (Sandbox Code Playgroud)

但真实的一共有5组25个单词(每组5个单词;每个单词都被5个受试者分配了1到4的数字......)。

我需要获取每个单词的 WLN 平均值,我可以使用循环轻松完成此操作并将结果保存在向量中;但然后我需要一个向量,其中根据单词所属的组来表示这些平均值...所以我需要第1组的单词的平均值,然后是第2组的单词的平均值...(我不知道不知道我是否说清楚了)。

如果不一组一组地做,我怎样才能得到这个呢?

Jil*_*ina 5

带底座,使用aggregate

> aggregate(WLN~GROUP+WORD, mean, data=df)
  GROUP WORD      WLN
1     1    1 3.333333
2     1    2 2.333333
3     2    3 1.333333
4     2    4 1.000000
Run Code Online (Sandbox Code Playgroud)

df@Metrics 的数据在哪里。

另一种选择是使用summaryBydoBy 包

> library(doBy)
> summaryBy(WLN~GROUP+WORD, FUN=mean, data=df)
  GROUP WORD WLN.mean
1     1    1 3.333333
2     1    2 2.333333
3     2    3 1.333333
4     2    4 1.000000
Run Code Online (Sandbox Code Playgroud)