1

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

一个示例表可能是:

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
4

1 回答 1

0

我们可以使用Reduce

 Reduce(`+`, tbl[a])

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

rowSums(tbl[a])
于 2015-11-25T12:15:34.810 回答