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])

しかし、両方のベクトルの要素の合計で 1 つの数値しか得られません。

私が必要とするのは、次の結果です。

tbl$num1+ tbl$num2
4

1 に答える 1

0

どちらかを使用できますReduce

 Reduce(`+`, tbl[a])

またはrowSums。にはrowSums、 で NA 要素を削除するオプションもありますna.rm=TRUE

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