opóźnione dane panelu z danymi.table
Obecnie używam danych paneludata.table
W następujący sposób:
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]
Zastanawiam się, czy jest lepszy sposób, aby to zrobić? Znalazłem coś online na temat łączenia krzyżowego, co ma sens. Jednak połączenie krzyżowe wygenerowałoby dość dużedata.table
dla dużego zbioru danych, więc nie jestem skłonny go użyć.