A function that correctly lags panel data where units are identified by
id and time periods are identified with t. Results are in same
order as data and are padded with NA as needed.
Arguments
- x
String identifying the vectors to be lagged in
data.- id
String identifying the unit (e.g. country) identifier in
data.- t
String identifying the time identifier in
data.- lag
Lag order, i.e. by how many time periods should
xbe lagged? Unlike the defaultlag, positive values indicate that past data is used for the current time period.- data
A data frame. If not provided, a new one will be constructed with the vectors supplied for the other parameters.
Examples
data(coups)
# No need to order before using panelLag, just do it here so we can compare results below.
coups <- coups[order(coups$gwcode, coups$year), ]
test <- panel_lag("polity2", "gwcode", "year", data=coups)
# Compare output
head(coups$polity2)
#> [1] 10 10 10 10 10 10
head(test)
#> [1] NA 10 10 10 10 10
