实际处理数据中,我们往往需要将某变量分组进行运算,dplyr包中的group_by和summarise函数联合使用,会让code变得更简洁。
library(dplyr)
##读取tsv格式文件
data<-read.delim('pseudo_facebook.tsv')
我想按照age进行分组,对friend_count的均值和中位数进行计算。
##用group_by分组
age_groups<-group_by(data,age)
##summarise函数将参数汇总,mean和median分别是求平均数和中位数,n是个数
data.fc_by_age<-summarise(age_groups, friend_count_mean=mean(friend_count), friend_count_median=median(friend_count), n=n())
##按年龄排序
pf.fc_by_age<-arrange(pf.fc_by_age,age)
也可以用管道函数,一样的效果
pf.fc_by_age<-pf %>%
group_by(age) %>%
summarise(friend_count_mean = mean(friend_count), friend_count_median = median(friend_count), n = n()) %>%
arrange(age)