【问题标题】:How to get mean values of grouped variables [duplicate]如何获得分组变量的平均值[重复]
【发布时间】:2017-04-16 21:12:40
【问题描述】:

我有一个数据框:

something<-data.frame( Drug=rep(c(1,2), each=6), Plant=c(rep("A",2),rep("B",2),rep("C",2)), dmso=c(0.407,0.374,0.452,0.429,0.439,0.436,0.441,0.453,0.439,0.436,0.452,0.429), One=c(0.241,0.237,0.455,0.436,0.453,0.433,0.47,0.461,0.453,0.433,0.455,0.436), Two=c(0.065,0.07,0.513,0.542,0.064,0.074,0.5,0.494,0.064,0.074,0.513,0.542), Three=c(0.063,0.068,0.678,0.631,0.068,0.073,0.449,0.521,0.068,0.073,0.678,0.631) )

我想创建一个新的数据框,其中的行将代表植物用于药物治疗的方法。 前任:

如果这是重复的帖子,我很抱歉,但我在其他任何地方都找不到解决方案。谢谢你:)

【问题讨论】:

    标签: r dataframe row mean


    【解决方案1】:

    这可以通过aggregate()来完成:

    aggregate(.~Drug+Plant,something,mean);
    ##   Drug Plant   dmso    One    Two  Three
    ## 1    1     A 0.3905 0.2390 0.0675 0.0655
    ## 2    2     A 0.4470 0.4655 0.4970 0.4850
    ## 3    1     B 0.4405 0.4455 0.5275 0.6545
    ## 4    2     B 0.4375 0.4430 0.0690 0.0705
    ## 5    1     C 0.4375 0.4430 0.0690 0.0705
    ## 6    2     C 0.4405 0.4455 0.5275 0.6545
    

    ## 类“公式”的 S3 方法
    聚合(公式数据FUN,..., 子集, na.action = na.omit)

    ...

    公式

        a formula,例如 y ~ x 或 cbind(y1, y2) ~ x1 + x2,其中 y 变量是要根据分组 x 变量(通常是因子)分组的数值数据。

    公式中.字符的特殊使用文档可以在formula的文档页面上找到:

    有两种特殊的解释。在一个公式中。通常的一个是在模型拟合函数的数据参数的上下文中,意思是“公式中没有的所有列”:参见terms.formula。仅在 update.formula 的上下文中,它的意思是“以前在这部分公式中的内容”。


    data.table解决办法:

    library(data.table);
    dt <- as.data.table(something);
    dt[,lapply(.SD,mean),.(Drug,Plant)];
    ##    Drug Plant   dmso    One    Two  Three
    ## 1:    1     A 0.3905 0.2390 0.0675 0.0655
    ## 2:    1     B 0.4405 0.4455 0.5275 0.6545
    ## 3:    1     C 0.4375 0.4430 0.0690 0.0705
    ## 4:    2     A 0.4470 0.4655 0.4970 0.4850
    ## 5:    2     B 0.4375 0.4430 0.0690 0.0705
    ## 6:    2     C 0.4405 0.4455 0.5275 0.6545
    

    【讨论】:

      猜你喜欢
      • 2020-03-12
      • 1970-01-01
      • 1970-01-01
      • 2020-12-05
      • 1970-01-01
      • 2012-03-18
      • 1970-01-01
      • 2018-11-22
      • 2022-08-14
      相关资源
      最近更新 更多