我想我要做的事情很简单,但我不能完全破解它。我有一个列“Random_ID”,其中包含参与者代码。总共有16个不同的参与者,他们分布在四所学校,由School_ID号表示。我的目标是计算每所学校参与者的平均值。在本例中,我知道这将是四个。但目标是推断出相当多的参与者和学校。任何帮助将不胜感激。
(df <- data.frame(Random_ID = c("A1", "A2", "A3", "A4", "A5", "A6","A7", "A8", "A9", "10", "A11", "A12", "A13", "A14", "A15", "A16"), School_ID = c("1", "2", "3", "4", "1", "2", "3", "4",
"1", "2", "3", "4", "1", "2", "3", "4")))
#> Random_ID School_ID
#> 1 A1 1
#> 2 A2 2
#> 3 A3 3
#> 4 A4 4
#> 5 A5 1
#> 6 A6 2
#> 7 A7 3
#> 8 A8 4
#> 9 A9 1
#> 10 10 2
#> 11 A11 3
#> 12 A12 4
#> 13 A13 1
#> 14 A14 2
#> 15 A15 3
#> 16 A16 4
创建于2023年3月1日,使用reprex v2.0.2
1条答案
按热度按时间k3fezbri1#
使用
dplyr
可以计算每个学校的数量,然后取这些计数的平均值这会将值保留在data.frame中。如果您想将其提取为数值向量,可以执行以下操作
以R为基数,您可以使用
table
进行计数,然后取平均值