A near-equivalent of
wbm() that instead uses Stan,
via rstan and brms.
wbm_stan( formula, data, id = NULL, wave = NULL, model = "w-b", detrend = FALSE, use.wave = FALSE, wave.factor = FALSE, min.waves = 2, model.cor = FALSE, family = gaussian, fit_model = TRUE, balance.correction = FALSE, dt.random = TRUE, dt.order = 1, chains = 3, iter = 2000, scale = FALSE, save_ranef = FALSE, interaction.style = c("double-demean", "demean", "raw"), weights = NULL, offset = NULL, ... )
Model formula. See details for crucial
The data, either a
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).
Should the wave be included as a predictor? Default is FALSE.
Should the wave variable be treated as an unordered factor instead of continuous? Default is FALSE.
What is the minimum number of waves an individual must
have participated in to be included in the analysis? Default is
Do you want to model residual autocorrelation?
This is often appropriate for linear models (
Use this to specify GLM link families. Default is
Fit the model? Default is TRUE. If FALSE, only the model code is returned.
Correct between-subject effects for unbalanced panels following the procedure in Curran and Bauer (2011)? Default is FALSE.
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.
If detrending using
How many Markov chains should be used? Default is 3, to leave you with one unused thread if you're on a typical dual-core machine.
How many iterations, including warmup? Default is 2000, leaving 1000 per chain after warmup. For some models and data, you may need quite a few more.
Standardize predictors? This can speed up model fit. Default is FALSE.
Save random effect estimates? This can be crucial for predicting from the model and for certain post-estimation procedures. On the other hand, it drastically increases the size of the resulting model. Default is FALSE.
The best way to calculate interactions in within
models is in some dispute. The conventional way (
If using weights, either the name of the column in the data that contains the weights or a vector of the weights.
this can be used to specify an a priori known
component to be included in the linear predictor during
fitting. This should be
Additional arguments passed on to
wbm_stan object, which is a list containing a
brm model and a
stan_code object with the model code.
fit_model = FALSE, instead a list is returned containing a
object and a
stan_data object, leaving you with the tools you need to
run the model yourself using
wbm() for details on the formula syntax, model types,
and some other stuff.