sim_tv_DGP {PAGFL}R Documentation

Simulate a Time-varying Panel With a Group Structure in the Slope Coefficients

Description

Construct a time-varying panel data set subject to a group structure in the slope coefficients with optional AR(1)AR(1) innovations.

Usage

sim_tv_DGP(
  N = 50,
  n_periods = 40,
  intercept = TRUE,
  p = 1,
  n_groups = 3,
  d = 3,
  dynamic = FALSE,
  group_proportions = NULL,
  error_spec = "iid",
  locations = NULL,
  scales = NULL,
  polynomial_coef = NULL,
  sd_error = 1,
  DGP = lifecycle::deprecated()
)

Arguments

N

the number of cross-sectional units. Default is 50.

n_periods

the number of simulated time periods TT. Default is 40.

intercept

logical. If TRUE, a time-varying intercept is generated.

p

the number of simulated explanatory variables

n_groups

the number of groups KK. Default is 3.

d

the polynomial degree used to construct the time-varying coefficients.

dynamic

Logical. If TRUE, the panel includes one stationary autoregressive lag of yity_{it} as a regressor. Default is FALSE.

group_proportions

a numeric vector of length n_groups indicating size of each group as a fraction of NN. If NULL, all groups are of size N/KN / K. Default is NULL.

error_spec

options include

"iid"

for iidiid errors.

"AR"

for an AR(1)AR(1) error process with an autoregressive coefficient of 0.5.

Default is "iid".

locations

a p×Kp \times K matrix of location parameters of a logistic distribution function used to construct the time-varying coefficients. If left empty, the location parameters are drawn randomly. Default is NULL.

scales

a p×Kp \times K matrix of scale parameters of a logistic distribution function used to construct the time-varying coefficients. If left empty, the location parameters are drawn randomly. Default is NULL.

polynomial_coef

a p×d×Kp \times d \times K array of coefficients for a the polynomials used to construct the time-varying coefficients. If left empty, the location parameters are drawn randomly. Default is NULL.

sd_error

standard deviation of the cross-sectional errors. Default is 1.

DGP

[Deprecated] the data generating process. Options are

1

generates a trend only.

2

simulates a trend and an additional exogenous explanatory variable.

1

draws a dynamic panel data model with one ARAR lag.

Details

The scalar dependent variable yity_{it} is generated according to the following time-varying grouped panel data model

yit=γi+βitxit+uit,i=1,,N,  t=1,,T,y_{it} = \gamma_i + \beta^\prime_{it} x_{it} + u_{it}, \quad i = 1, \dots, N, \; t = 1, \dots, T,

where γi\gamma_i is an individual fixed effect and xitx_{it} is a p×1p \times 1 vector of explanatory variables. The coefficient vector βi={βi1,,βiT}\beta_i = \{\beta_{i1}^\prime, \dots, \beta_{iT}^\prime \}^\prime is subject to the group pattern

βi(tT)=k=1Kαk(tT)1{iGk},\beta_i \left( \frac{t}{T} \right) = \sum_{k = 1}^K \alpha_k \left( \frac{t}{T} \right) \bold{1} \{i \in G_k \},

with k=1KGk={1,,N}\cup_{k = 1}^K G_k = \{1, \dots, N\}, GkGj=G_k \cap G_j = \emptyset and supv[0,1](αk(v)αj(v))0\sup_{v \in [0,1]} \left( \| \alpha_k(v) - \alpha_j(v) \| \right) \neq 0 for any kjk \neq j, k=1,,Kk = 1, \dots, K. The total number of groups KK is determined by n_groups.

The predictors are simulated as:

xit,j=0.2γi+eit,j,γi,eit,ji.i.d.N(0,1),j={1,,p},x_{it,j} = 0.2 \gamma_i + e_{it,j}, \quad \gamma_i,e_{it,j} \sim i.i.d. N(0, 1), \quad j = \{1, \dots, p\},

where eit,je_{it,j} denotes a series of innovations. γi\gamma_i and eie_i are independent of each other.

The errors uitu_{it} feature a iidiid standard normal distribution.

In case locations = NULL, the location parameters are drawn from U[0.3,0.9]\sim U[0.3, 0.9]. In case scales = NULL, the scale parameters are drawn from U[0.01,0.09]\sim U[0.01, 0.09]. In case polynomial_coef = NULL, the polynomial coefficients are drawn from U[20,20]\sim U[-20, 20] and normalized so that all coefficients of one polynomial sum up to 1. The final coefficient function follows as αk(t/T)=3F(t/T,location,scale)+j=1daj(t/T)j\alpha_k (t/T) = 3 * F(t/T, location, scale) + \sum_{j=1}^d a_j (t/T)^j, where F(,location,scale)F(\cdot, location, scale) denotes a cumulative logistic distribution function and aja_j reflects a polynomial coefficient.

Value

A list holding

alpha

a T×p×KT \times p \times K array of group-specific time-varying parameters

beta

a T×p×NT \times p \times N array of individual time-varying parameters

groups

a vector indicating the group memberships (g1,,gN)(g_1, \dots, g_N), where gi=kg_i = k if ii \in group kk.

y

a NT×1NT \times 1 vector of the dependent variable, with y=(y1,,yN)\bold{y}=(y_1, \dots, y_N)^\prime, yi=(yi1,,yiT)y_i = (y_{i1}, \dots, y_{iT})^\prime and the scalar yity_{it}.

X

a NT×pNT \times p matrix of explanatory variables, with X=(x1,,xN)\bold{X}=(x_1, \dots, x_N)^\prime, xi=(xi1,,xiT)x_i = (x_{i1}, \dots, x_{iT})^\prime and the p×1p \times 1 vector xitx_{it}.

data

a NT×(p+1)NT \times (p + 1) data.frame of the outcome and the explanatory variables.

Author(s)

Paul Haimerl

Examples

# Simulate a time-varying panel subject to a time trend and a group structure
sim <- sim_tv_DGP(N = 20, n_periods = 50, intercept = TRUE, p = 1)
y <- sim$y


[Package PAGFL version 1.1.1 Index]