7

正在寻找一种简单的方法来将我的数据表中大约 170 个不同列的总和作为新列。我可以使用一些通配符表示法吗?

以下是我的数据集中的一小部分摘录(前几列):

> head(t_checkin)
checkin_info_0.0 checkin_info_0.1 checkin_info_0.2 checkin_info_0.3 checkin_info_0.4 checkin_info_0.5
              NA               NA               NA               NA               NA                1
               3               NA               NA               NA               NA                1
              NA               NA                1               NA               NA               NA
              NA               NA               NA               NA               NA               NA
              NA               NA               NA               NA               NA               NA
              NA               NA               NA               NA               NA               NA

任何帮助将不胜感激。谢谢

4

1 回答 1

8

编辑

更正,按照@MatthewDowle 所说的去做:

dat <- data.frame(x=1:11,y=100:110,z=sample(letters,11))
DT <- as.data.table(dat)
names <- c("x","y")
DT[,lapply(.SD,sum),.SDcols=names]


mysum <- function(x){sum(x, na.rm=TRUE)}
DT[,lapply(.SD,mysum),.SDcols=names]
于 2013-04-09T15:05:45.317 回答