【问题标题】:Sum values in rows with same names in R [duplicate]在R中对具有相同名称的行中的值求和[重复]
【发布时间】:2020-07-19 21:45:26
【问题描述】:

我有一个数据框,其中一些行的名称与此相同(除了显示的名称之外,还有更多名称,还有更多名称可变的列):

          category1   category2 
bacteria      5           6
bacteria      3           6
bacteria      7           4
archaea       1           2
archaea       3           7

我需要将具有相同的行的值相加才能得到这样的输出:

          category1   category2 
bacteria      15          16
archaea       4           9

【问题讨论】:

    标签: r dataframe


    【解决方案1】:

    我们可以使用rowsum。假设显示的数据集是 matrix 而不是 data.frame,因为 data.frame 不能有重复的行名

    rowsum(df1, row.names(df1))
    

    或使用aggregate

    aggregate(df1, list(row.names(df1)), sum)
    

    数据

    df1 <- structure(c(5L, 3L, 7L, 1L, 3L, 6L, 6L, 4L, 2L, 7L), .Dim = c(5L, 
    2L), .Dimnames = list(c("bacteria", "bacteria", "bacteria", "archaea", 
    "archaea"), c("category1", "category2")))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      • 2021-08-09
      • 2021-08-29
      • 2021-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多