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]