美文网首页统计与科研
R语言aggregate函数

R语言aggregate函数

作者: 医科研 | 来源:发表于2019-01-08 12:09 被阅读30次
    以下演示aggregate函数的用法示例 aggregate(x,by, FUN) x是待折叠的数据对象
    by是变量名组成的list,FUN是函数
    
    options(digits=3)##小数点位数
    attach(mtcars)
    #查看数据结构
    class(mtcars)
    ## [1] "data.frame"
    dim(mtcars)
    ## [1] 32 11
    head(mtcars)
    ##                    mpg cyl disp  hp drat   wt qsec vs am gear carb
    ## Mazda RX4         21.0   6  160 110 3.90 2.62 16.5  0  1    4    4
    ## Mazda RX4 Wag     21.0   6  160 110 3.90 2.88 17.0  0  1    4    4
    ## Datsun 710        22.8   4  108  93 3.85 2.32 18.6  1  1    4    1
    ## Hornet 4 Drive    21.4   6  258 110 3.08 3.21 19.4  1  0    3    1
    ## Hornet Sportabout 18.7   8  360 175 3.15 3.44 17.0  0  0    3    2
    ## Valiant           18.1   6  225 105 2.76 3.46 20.2  1  0    3    1
    table(mtcars$cyl)
    ## 
    ##  4  6  8 
    ## 11  7 14
    table(mtcars$gear)
    ## 
    ##  3  4  5 
    ## 15 12  5
    #aggregate函数对数据集中的cyl与gear两个条件求出各组的平均值,非常强大的功能
    aggdata<-aggregate(mtcars,by=list(cyl,gear),FUN=mean,na.rm=TRUE)
    dim(aggdata)
    ## [1]  8 13
    aggdata
    ##   Group.1 Group.2  mpg cyl disp  hp drat   wt qsec  vs   am gear carb
    ## 1       4       3 21.5   4  120  97 3.70 2.46 20.0 1.0 0.00    3 1.00
    ## 2       6       3 19.8   6  242 108 2.92 3.34 19.8 1.0 0.00    3 1.00
    ## 3       8       3 15.1   8  358 194 3.12 4.10 17.1 0.0 0.00    3 3.08
    ## 4       4       4 26.9   4  103  76 4.11 2.38 19.6 1.0 0.75    4 1.50
    ## 5       6       4 19.8   6  164 116 3.91 3.09 17.7 0.5 0.50    4 4.00
    ## 6       4       5 28.2   4  108 102 4.10 1.83 16.8 0.5 1.00    5 2.00
    ## 7       6       5 19.7   6  145 175 3.62 2.77 15.5 0.0 1.00    5 6.00
    ## 8       8       5 15.4   8  326 300 3.88 3.37 14.6 0.0 1.00    5 6.00
    #**例如可以解释第一行的数据为cyl为4和gear为3时,其它变量disp,hp等的平均值**
    #这是非常可怕的功能,可以自由的折叠,提取数据子集

    相关文章

      网友评论

        本文标题:R语言aggregate函数

        本文链接:https://www.haomeiwen.com/subject/vojvrqtx.html