記住是summarize函數(shù)而不是summarise函數(shù)
summarize函數(shù)可以進數(shù)據(jù)框折疊成一行
計數(shù)本質(zhì)上返回的是分組后的行數(shù)
summarize(flights, delay=mean(dep_delay,na.rm=T))
##所以新的列名就是delay
group_by為分組函數(shù),是如果我們添加了group_by函數(shù)后,我們可以理解為電腦自動給我們的數(shù)據(jù)進行了按照我們指定的列進行了分組整合,該函數(shù)通常和summarize函數(shù)合在一起使用,也可以和filter,select函數(shù)合在一起使用
記住一點:summarize返回值一般為新的一個數(shù)據(jù)框,且該數(shù)據(jù)框一般情況下和原始的數(shù)據(jù)框長度一定不相同,列數(shù)應該是group_by參數(shù)+summarize參數(shù),例如下面為四列,summarize中間的條件用逗號隔開
tt=flights%>%
group_by(dest)%>%
summarize(count=n(),
dist=mean(distance,na.rm=T),
delay=mean(arr_delay,na.rm=T))

image.png
例如下面也應該為四列 group_by函數(shù)可以進行多組分類,比如下面先按照年,在按照月,在按照日分類
ttt=flights%>%
group_by(year,month,day)%>%
summarize(delay=mean(arr_delay,na.rm=T))
############################################################
tttt=flights%>%
group_by(year,month,day)%>%
summarize(count=n(),
dist=mean(distance,na.rm=T),
delay=mean(arr_delay,na.rm=T))

image.png

image.png
count 計數(shù) 相當于summarize函數(shù)中的n()函數(shù)
count函數(shù)可以不用先分組,可以直接加上列名字,比如下面二者相同
ttttt=not_cancel%>%
group_by(tailnum)%>%
count()
ttttt2=not_cancel%>%
count(tailnum)
但是如果你要添加一些統(tǒng)計資料,比如求均值之列的推薦用sunmarize,用count函數(shù)+sunmarize會報錯
dat_df%>%group_by(type)%>%summarise(kk=mean(x1))
在計算均值等函數(shù)的時候,一最好給結(jié)果一個名字,二是所有的函數(shù)要寫在summarise()里面,否則會報錯

image.png
count加上sort參數(shù)表示從到小排列
ttttt2=not_cancel%>%
count(tailnum,sort = T)