【发布时间】:2021-02-05 22:16:12
【问题描述】:
library(data.table)
dt_store<-list()
A <- data.table(a = paste0("gid",1:4), b = paste0("IID",12:15),value=seq(from=1, to=4))
B <- data.table(a = paste0("gid",1:4), b = paste0("IID",12:15),value=seq(from=11, to=14))
C <- data.table(a = paste0("gid",1:4), b = paste0("IID",12:15),value=seq(from=21, to=24))
dt_store[[1]]<-A
dt_store[[2]]<-B
dt_store[[3]]<-C
我想求和/添加列value。列表中的每个 data.table 具有相同的行数和相同的列名。 b 列是唯一的。 a列中可以有重复项
我想得到最终输出:
a b final_sum
gid1 IID12 33
gid2 IID13 36
gid3 IID14 39
gid4 IID15 42
Reduce("+",lapply(dt_store,value)) #this 出错了。
如何使用Reduce 或lapply、mapply?我可以使用 for 循环,但这太天真了。抱歉,我很难掌握这些关键功能。
【问题讨论】:
标签: r data.table reduce