Fit "within-between" and several other regression variants for panel data via generalized estimating equations.

wbgee( formula, data, id = NULL, wave = NULL, model = "w-b", cor.str = c("ar1", "exchangeable", "unstructured"), detrend = FALSE, use.wave = FALSE, wave.factor = FALSE, min.waves = 2, family = gaussian, balance.correction = FALSE, dt.random = TRUE, dt.order = 1, weights = NULL, offset = NULL, interaction.style = c("double-demean", "demean", "raw"), scale = FALSE, scale.response = FALSE, n.sd = 1, calc.fit.stats = TRUE, ... )

formula | Model formula. See details for crucial
info on |
---|---|

data | The data, either a |

id | If |

wave | If |

model | One of |

cor.str | Any correlation structure accepted by |

detrend | Adjust within-subject effects for trends in the predictors? Default is FALSE, but some research suggests this is a better idea (see Curran and Bauer (2011) reference). |

use.wave | Should the wave be included as a predictor? Default is FALSE. |

wave.factor | Should the wave variable be treated as an unordered factor instead of continuous? Default is FALSE. |

min.waves | What is the minimum number of waves an individual must
have participated in to be included in the analysis? Default is |

family | Use this to specify GLM link families. Default is |

balance.correction | Correct between-subject effects for unbalanced panels following the procedure in Curran and Bauer (2011)? Default is FALSE. |

dt.random | Should the detrending procedure be performed with a random slope for each entity? Default is TRUE but for short panels FALSE may be better, fitting a trend for all entities. |

dt.order | If detrending using |

weights | If using weights, either the name of the column in the data that contains the weights or a vector of the weights. |

offset | this can be used to specify an |

interaction.style | The best way to calculate interactions in within
models is in some dispute. The conventional way ( |

scale | If |

scale.response | Should the response variable also be rescaled? Default
is |

n.sd | How many standard deviations should you divide by for standardization? Default is 1, though some prefer 2. |

calc.fit.stats | Calculate fit statistics? Default is TRUE, but occasionally poor-fitting models might trip up here. |

... | Additional arguments provided to |

A `wbgee`

object, which inherits from `geeglm`

.

See the documentation for `wbm()`

for many details on formula syntax and
other arguments.

Allison, P. (2009). *Fixed effects regression models*.
Thousand Oaks, CA: SAGE Publications.
https://doi.org/10.4135/9781412993869.d33

Bell, A., & Jones, K. (2015). Explaining fixed effects: Random effects
modeling of time-series cross-sectional and panel data.
*Political Science Research and Methods*, *3*, 133–153.
https://doi.org/10.1017/psrm.2014.7

Curran, P. J., & Bauer, D. J. (2011). The disaggregation of within-person
and between-person effects in longitudinal models of change.
*Annual Review of Psychology*, *62*, 583–619.
https://doi.org/10.1146/annurev.psych.093008.100356

Giesselmann, M., & Schmidt-Catran, A. W. (2020). Interactions in fixed
effects regression models. *Sociological Methods & Research*, 1–28.
https://doi.org/10.1177/0049124120914934

McNeish, D. (2019). Effect partitioning in cross-sectionally clustered data
without multilevel models. *Multivariate Behavioral Research*,
Advance online publication. https://doi.org/10.1080/00273171.2019.1602504

McNeish, D., Stapleton, L. M., & Silverman, R. D. (2016). On the unnecessary
ubiquity of hierarchical linear modeling. *Psychological Methods*, *22*,
114-140. https://doi.org/10.1037/met0000078

Schunck, R., & Perales, F. (2017). Within- and between-cluster effects in
generalized linear mixed models: A discussion of approaches and the
`xthybrid`

command. *The Stata Journal*, *17*, 89–115.
https://doi.org/10.1177/1536867X1701700106

data("WageData") wages <- panel_data(WageData, id = id, wave = t) model <- wbgee(lwage ~ lag(union) + wks | blk + fem | blk * lag(union), data = wages) summary(model)#> MODEL INFO: #> Entities: 595 #> Time periods: 2-7 #> Dependent variable: lwage #> Model type: Linear GEE #> Variance: ar1 (alpha = 0.85) #> Specification: within-between #> #> MODEL FIT: #> QIC = 655.54, QICu = 653.36, CIC = 9.09 #> #> WITHIN EFFECTS: #> ----------------------------------------------- #> Est. S.E. z val. p #> ---------------- ------- ------ -------- ------ #> lag(union) 0.02 0.02 0.98 0.33 #> wks -0.00 0.00 -0.82 0.41 #> ----------------------------------------------- #> #> BETWEEN EFFECTS: #> ------------------------------------------------------ #> Est. S.E. z val. p #> ----------------------- ------- ------ -------- ------ #> (Intercept) 6.61 0.24 27.12 0.00 #> imean(lag(union)) -0.01 0.03 -0.40 0.69 #> imean(wks) 0.00 0.01 0.75 0.45 #> blk -0.23 0.06 -3.86 0.00 #> fem -0.43 0.05 -8.94 0.00 #> ------------------------------------------------------ #> #> CROSS-LEVEL INTERACTIONS: #> --------------------------------------------------- #> Est. S.E. z val. p #> -------------------- ------- ------ -------- ------ #> lag(union):blk -0.11 0.05 -2.22 0.03 #> --------------------------------------------------- #>