【发布时间】:2020-09-30 22:53:56
【问题描述】:
我正在使用data.table v. 1.12.8。我正在尝试使用() 和get() 引用带有变量的列。它失败了,我不明白为什么。这种语法在使用:= 并通过引用更新时确实有效(请参阅this 或this 问题)。
library(data.table)
X <- data.table(id = 1:5, group = c(1,1,2,2,2), v1 = c(10,12,14,16,18), type_v1 = c("t1","t2","t1","t1","t2"))
this_var <- "v1"
X[, .("v1" = sum(v1)), by = group] # this works
X[, .((this_var) = sum(get(this_var))), by = group] # this does not
我知道,对于我的示例,我可以只使用 .SD,但我的使用需要动态且单独地引用列,而无需更新原始 data.table。
【问题讨论】:
标签: r group-by data.table