假设我有以下数据表R
:
L3 <- LETTERS[1:3]
(d <- data.table(cbind(x = 1, y = 1:10), fac = sample(L3, 10, replace = TRUE)))
vecfx=c(5.3,2.8)
我想计算两个新变量,dot1
它们dot2
是:
d[,dot1:=5.3*x]
d[,dot2:=2.8*y]
但我不想以这种方式计算它们,因为这是对我的问题的一种放松。在我最初的问题中,vecfx
由 12 个元素组成,我的数据表有 2 列,所以我想避免写那 2 次。
我试过这个:vecfx*d[,list(x,y)]
但我没有得到想要的结果(看起来产品是按行而不是按列完成的)。另外,我想在我的数据表中创建这两个新变量d
。
当您想要在R
.
任何帮助表示赞赏。