我在使用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))
Run Code Online (Sandbox Code Playgroud)
这给出了"grp"表示的每个组的列"a"的平均值.
我的问题是:是否有可能同时获得每个组中每列的方法?或者我必须df %>% group_by(grp) %>% summarise(mean(a))为每一栏重复一次?
我想拥有的是什么
df %>% group_by(grp) %>% summarise(mean(a:d)) # "mean(a:d)" does not work
Run Code Online (Sandbox Code Playgroud) 我有一个数据框记录了一个客户花费了多少钱,如下所示:
custid, value
1, 1
1, 3
1, 2
1, 5
1, 4
1, 1
2, 1
2, 10
3, 1
3, 2
3, 5
Run Code Online (Sandbox Code Playgroud)
如何使用mean,max,median,std等计算特征,如下所示?使用一些应用功能?如何?
custid, mean, max,min,median,std
1, ....
2,....
3,....
Run Code Online (Sandbox Code Playgroud) 想象一下我有一个2列的数据框
Id Value
12 13
32 3
6022 11
9142 231
12 23
119 312
...
Run Code Online (Sandbox Code Playgroud)
我想获取每个“ Id”的平均值。您知道执行此操作的任何快速方法吗?