【问题标题】:How to use Aggregate function in R如何在 R 中使用聚合函数
【发布时间】:2014-01-04 10:11:44
【问题描述】:

您能帮我如何在 R 中正确使用聚合函数吗? 我有这样的数据:

SPORT   FLOWS
[1,] "Other" "1"  
[2,] "Other" "1"  
[3,] "Other" "1"  
[4,] "Other" "1"  
[5,] "Other2" "1"  
[6,] "Other2" "1"

我需要得到这个:

SPORT   FLOWS
[1,] "Other" "4"
[2,] "Other2" "2"

我发现,它可以用聚合函数来完成,但它不起作用..

谢谢你们..我已经标记了对我有用的答案..

【问题讨论】:

  • 你最大的问题是FLOWS的类型是character
  • 另外,你可能对折叠数据的 plyr 包感兴趣。

标签: r aggregation


【解决方案1】:
aggregate(FLOWS ~ SPORT, dat, function(x) sum(as.numeric(x)))

dat 是矩阵的名称。

这里需要函数is.numeric将第二列转换为数字。

【讨论】:

    【解决方案2】:

    假设您的数据框名为“sport_data”,我想您只想:

    aggregate(sport_data, sport_data$SPORT, sum)
    

    如果您只有单个计数(都等于 1),那么“制表”可能是一个更简单的选项。

    请告诉我们您遇到了什么样的错误。 (如果这不起作用,或者将来,在您的问题中)

    【讨论】:

      【解决方案3】:

      在 r 中尝试聚合函数

      test <- aggregate(df[,4:5] ,by=list(df$name),sum)
      

      【讨论】:

        猜你喜欢
        • 2014-01-23
        • 1970-01-01
        • 2020-09-03
        • 2021-12-31
        • 2016-11-04
        • 1970-01-01
        • 2021-09-17
        • 2020-06-08
        • 1970-01-01
        相关资源
        最近更新 更多