R语言-分组统计
分組統計
1、假定有一組成績數據,要求根據性別進行分組統計:
> score
??? ID?? score1 score2 Gender
1? 101 11.35321??? 0.9?? male
2? 102 12.58654??? 0.6?? male
3? 103 19.79380??? 0.9 female
4? 104 12.01352??? 0.4 female
5? 105 11.97081??? 0.4 female
6? 106 17.37480??? 0.7 female
7? 107 14.24884??? 0.3 female
8? 108 18.47972??? 0.8?? male
9? 109 18.74792??? 0.8?? male
10 110 18.90146??? 0.7?? male
2、方法:使用aggregate(x, by, FUN)
其中x是待折疊的數據對象,by是一個變量名組成的列表,這些變量將被去掉以形成新的觀測,而FUN則是用來計算描述性統計量的標量函數,它將被用來計算新觀測中的值。?
> aggregate(score[,c(2,3)],list(score[,4]),mean)
? Group.1?? score1 score2
1? female 15.08035?? 0.54
2??? male 16.01377?? 0.76
score[,c(2,3)] 表示對score1和score2列進行分組統計
list(score[,4])表示根據score第4列,也就是性別列進行分組統計。
mean表示統計平均值。
也可以寫作下面的形式:
> aggregate(score[,c(2,3)],list(score$Gender),mean)
? Group.1?? score1 score2
1? female 15.08035?? 0.54
2??? male 16.01377?? 0.76
可選參考:
library(dplyr)
group_by(data, sex) %>% summarize_each(funs(mean), var1, var2, var3...)
轉載于:https://www.cnblogs.com/awishfullyway/p/6601489.html
總結
- 上一篇: [Java并发编程(二)] 线程池 Fi
- 下一篇: idea 在tomcat中部署的时候 莫