aggregate用法示例

按照多个自变量进行分类并求均值

attach(mtcars)
aggdata<-aggregate(mtcars,by=list(cyl,gear),FUN=mean,na.rm=TRUE)
aggdata
Group.1 Group.2 mpg cyl disp hp drat wt qsec vs am gear carb
1 4 3 21.500 4 120.1000 97.0000 3.700000 2.465000 20.0100 1.0 0.00 3 1.000000
2 6 3 19.750 6 241.5000 107.5000 2.920000 3.337500 19.8300 1.0 0.00 3 1.000000
3 8 3 15.050 8 357.6167 194.1667 3.120833 4.104083 17.1425 0.0 0.00 3 3.083333
4 4 4 26.925 4 102.6250 76.0000 4.110000 2.378125 19.6125 1.0 0.75 4 1.500000
5 6 4 19.750 6 163.8000 116.5000 3.910000 3.093750 17.6700 0.5 0.50 4 4.000000
6 4 5 28.200 4 107.7000 102.0000 4.100000 1.826500 16.8000 0.5 1.00 5 2.000000
7 6 5 19.700 6 145.0000 175.0000 3.620000 2.770000 15.5000 0.0 1.00 5 6.000000
8 8 5 15.400 8 326.0000 299.5000 3.880000 3.370000 14.5500 0.0 1.00 5 6.000000

获取子集

aggdata[,c(‘cyl’,‘gear’,‘mpg’)]
cyl gear mpg
1 4 3 21.500
2 6 3 19.750
3 8 3 15.050
4 4 4 26.925
5 6 4 19.750
6 4 5 28.200
7 6 5 19.700
8 8 5 15.400

以上方法等同于下面方法

aggregate(list(mpg=mpg),list(cyl=cyl,gear=gear),FUN=mean)
cyl gear mpg
1 4 3 21.500
2 6 3 19.750
3 8 3 15.050
4 4 4 26.925
5 6 4 19.750
6 4 5 28.200
7 6 5 19.700
8 8 5 15.400

一个自,一个因变量

aggregate(mpg~cyl,data=mtcars,FUN=mean,na.rm=TRUE)
cyl mpg
1 4 26.66364
2 6 19.74286
3 8 15.10000

一个自变量,多个因变量

aggregate(cbind(mpg,cyl)~gear,data=mtcars,FUN=mean,na.rm=TRUE)
gear mpg cyl
1 3 16.10667 7.466667
2 4 24.53333 4.666667
3 5 21.38000 6.000000

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读