data.table
我目前使用以下方式滞后面板数据:
require(data.table)
x <- data.table(id=1:10, t=rep(1:10, each=10), v=1:100)
setkey(x, id, t) #so that things are in increasing order
x[,lag_v:=c(NA, v[1:(length(v)-1)]),by=id]
我想知道是否有更好的方法来做到这一点?我在网上找到了一些关于交叉连接的东西,这是有道理的。但是,交叉连接会data.table
为大型数据集生成相当大的数据,因此我对使用它犹豫不决。