r - 如何计算r中数据框中每组的平均值/中位数

标签 r mean median

我有一个数据框,详细记录了客户花了多少钱,如下所示:

custid, value
1,  1
1,  3
1,  2
1,  5
1,  4
1,  1
2,  1
2,  10
3,  1
3,  2
3,  5

如何使用平均值、最大值、中位数、标准差等计算特征,如下所示?使用一些应用功能?又如何?

custid, mean, max,min,median,std
1,  ....
2,....
3,....

最佳答案

library(dplyr)
dat%>%
group_by(custid)%>% 
summarise(Mean=mean(value), Max=max(value), Min=min(value), Median=median(value), Std=sd(value))
#  custid     Mean Max Min Median      Std
#1      1 2.666667   5   1    2.5 1.632993
#2      2 5.500000  10   1    5.5 6.363961
#3      3 2.666667   5   1    2.0 2.081666

对于更大的数据集,data.table 会更快

setDT(dat)[,list(Mean=mean(value), Max=max(value), Min=min(value), Median=as.numeric(median(value)), Std=sd(value)), by=custid]
#   custid     Mean Max Min Median      Std
#1:      1 2.666667   5   1    2.5 1.632993
#2:      2 5.500000  10   1    5.5 6.363961
#3:      3 2.666667   5   1    2.0 2.081666

关于r - 如何计算r中数据框中每组的平均值/中位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25198442/

相关文章:

arrays - Julia 中多个数组的中位数

r - 使用 ggrepel 标记单个点

r - 选择某些(未知)索引之间的行

R 优化使用 stri_extract 的双循环

javascript - 从 Angular 动态添加的表单获取数据

javascript - 在 promise 在其他代码位置解析后运行代码

algorithm - 采访街道中值挑战

R/动物园 : index entries in ‘order.by’ are not unique

r - 使用 geom_bar 和 stat ="identity"在均值处绘制 hline

计算均值中位数模式c编程数组