【问题标题】:R - sum vectors matching names [duplicate]R - 匹配名称的向量和[重复]
【发布时间】:2015-11-25 12:14:17
【问题描述】:

我需要对名称以特定字符串开头的表的列求和。

一个示例表可能是:

tbl<-data.frame(num1=c(3,2,9), num2=c(3,2,9),n3=c(3,2,9),char1=c('a', 'b', 'c'))

我得到了列的列表(在这个例子中我只写了 2 个,但实际情况有更多的 tan 20)。

a<-colnames(tbl)[grep('num', colnames(tbl))]

我试过了

sum(tbl[,a])

但我只得到两个向量中元素总和的一个数字。

我需要的是结果:

tbl$num1+ tbl$num2

【问题讨论】:

    标签: r rowsum


    【解决方案1】:

    我们可以使用Reduce

     Reduce(`+`, tbl[a])
    

    rowSumsrowSums 还可以选择使用 na.rm=TRUE 删除 NA 元素。

    rowSums(tbl[a])
    

    【讨论】:

      猜你喜欢
      • 2014-12-19
      • 2019-02-27
      • 1970-01-01
      • 2020-09-13
      • 2019-11-30
      • 1970-01-01
      • 2015-09-16
      • 2015-07-05
      • 2014-04-22
      相关资源
      最近更新 更多