【发布时间】:2018-02-20 23:56:38
【问题描述】:
我在数据表中有单列
library(data.table)
DT <- data.table(con=c(1:5))
我的结果是一个数据表,其中新列 x 计算如下:第一个值应该是 con(here:1) 的第一个值,下一个(第二个)值应该通过将 con 的第二个值乘以 x 的第一个值来计算. x 的第三个值是 con 的第三个值乘以 x 的第二个值的结果,依此类推。结果:
DT <- data.table(con=c(1:5), x = c(1,2,6,24,120))
我尝试使用轮班,但在我的代码的某些行下面没有帮助:
DT <- data.table(con=c(1:5))
DT[, x := shift(con,1, type = "lead")]
DT[, x := shift(x, 1)]
DT[, x := con * x]
【问题讨论】:
标签: r data.table data-manipulation shift