R data.table从函数调用中添加列

时间:2015-05-21 17:25:19

标签: r data.table

我正在调用一个返回带有一列的data.table的函数。

dt <- data.table(Cmpd.Batch=(1:10), Mass=101:105, REP=1:2, CONC=rep(1:2, each=5), REPEAT=1)
dt[, makeCalcResHeader(.SD), by="CONC", .SDcols=c("Cmpd.Batch", "Mass", "REP", "CONC", "REPEAT")]

makeCalcResHeader <- function(dt){
    headDT <- data.table(c("Text", paste0("curve id[", dt$CONC[1], "uM]")))
    dataDT <- data.table(unique(paste(dt$Cmpd.Batch, dt$Mass, dt$REP, dt$CONC, dt$REPEAT, sep="-")))
    return(rbind(headDT, dataDT))
  }

但我希望每个返回的data.table(对于每个CONC / REPEAT组)都是它自己的独立列,这样每次运行一个列时,都会将一个列附加到原始data.table。

每个“部分”应该是它自己的独立列。

有没有data.table方法可以做到这一点?

0 个答案:

没有答案