panel_lag {panelWranglR} | R Documentation |
Tidy panel lagging
Description
Efficient, tidy panel lagging
Usage
panel_lag(data, cross.section, time.variable = NULL, lags = 1,
variables.selected = NULL, keep.original = TRUE)
Arguments
data |
The data input, anything coercible to a data.table. |
cross.section |
The cross section argument, see examples. |
time.variable |
The variable to indicate time in your panel. Defaults to NULL, though it is recommended to have a time variable. |
lags |
The lags to use in panel lagging. |
variables.selected |
A variable selection for variables to lag, defaults to NULL and lags ALL variables. |
keep.original |
Whether to keep the original unlagged data, defaults to TRUE. |
Details
Works on a full data.table backend for maximum speed wherever possible.
Value
The lagged data.table which contains either only the lagged variables, or also the original variables.
Examples
X <- matrix(rnorm(4000),800,5)
tim <- seq(1:400)
geo_AT <- rep(c("AT"), length = 400)
geo_NO <- rep(c("NO"), length = 400)
both_vec_1 <- cbind(tim,geo_NO)
both_vec_2 <- cbind(tim,geo_AT)
both <- rbind(both_vec_1,both_vec_2)
names(both[,"geo_NO"]) <- "geo"
X <- cbind(both,X)
panel_lag(data = X,
cross.section = "geo_NO",
time.variable = "tim",
lags = 5,
variables.selected = c("V5","tim", "V7"),
keep.original = TRUE)
[Package panelWranglR version 1.2.13 Index]