使用分配给多列的最佳方法是什么data.table
?例如:
f <- function(x) {c("hi", "hello")}
x <- data.table(id = 1:10)
我想做这样的事情(当然这个语法是不正确的):
x[ , (col1, col2) := f(), by = "id"]
为了扩展这一点,我可能有很多列,它们的名称存储在变量中(例如col_names
),我想这样做:
x[ , col_names := another_f(), by = "id", with = FALSE]
做这样的事情的正确方法是什么?
1
看起来好像已经得到了答复: stackoverflow.com/questions/11308754/…–
—
Alex
亚历克斯,这个答案很接近,但似乎无法与
—
马特·道尔
by
@Christoph_J正确地结合使用。链接到已添加到FR#2120的问题 “对于LHS为:=“,需要丢弃== FALSE,这样就不会忘记再次访问它。
需要明确的
—
smci
f()
是,该函数返回多个值,每个列一个。