我对 dplyr 语法有点纠结。我有一个不同变量的数据框架和一个分组变量。现在我想使用 R 中的 dplyr 计算每个组中每个列的平均值。
df <- data.frame(
a = sample(1:5, n, replace = TRUE),
b = sample(1:5, n, replace = TRUE),
c = sample(1:5, n, replace = TRUE),
d = sample(1:5, n, replace = TRUE),
grp = sample(1:3, n, replace = TRUE)
)
df %>% group_by(grp) %>% summarise(mean(a))
这给出了“ grp”表示的每个组的列“ a”的平均值。
我的问题是: 是否有可能同时获取每个组中每个列的方法?或者我必须为每一列重复 df %>% group_by(grp) %>% summarise(mean(a))
吗?
我想要的是
df %>% group_by(grp) %>% summarise(mean(a:d)) # "mean(a:d)" does not work