Simulates posterior distributions of parameters from a two-level normal model with heterogeneous within-cluster variances (Kasim and Raudenbush, 1998). Imputations can be drawn as an extra step to the algorithm.
Usage
kr(y, x, g, control = control_kr())
Arguments
- y
Vector with outcome value
- x
Matrix with predictor value
- g
Vector with group values
- control
A list created by
control_kr()
that sets algorithmic options of the sampler and correlation model.
Value
An object of class kr
, basically a list with components:
* `beta` Fixed effects
* `omega` Variance-covariance of random effects
* `sigma2_j` Residual variance per group
* `sigma2` Average residual variance
* `sample` Descriptive statistics about the data
* `imp` Numeric matrix with `nimp` multiple imputations.
* `mod` A list of objects of class [coda::mcmc()]
The number of rows in imp
is equal to the number of missing values in the
outcome vector y
. The number of columns equals nimp
.
Details
The speed of the Kasim-Raudenbush sampler is almost independent of the number of random effect, and foremost depends on the total number of iterations.
The defaults start = 100
, n = 200
and thin = 1
provide 200 parameter
draws with a reasonable approximation to the variance-covariance
matrix of the random effects.
For a closer approximations with 200 draws set control = control_kr(thin = 10)
(better) or thin = 20
(best), at the expense of a linear increase in calculation
time. Drawing fewer than 50 observations is not recommended, and such
results are best treated as indicative.
It is possible to draw multiple imputations by setting the nimp
parameter.
For example, to draw five imputations for each missing outcome specify
control = control_kr(nimp = 5)
.
References
Kasim RM, Raudenbush SW. (1998). Application of Gibbs sampling to nested variance components models with heterogeneous within-group variance. Journal of Educational and Behavioral Statistics, 23(2), 93--116.
Author
Stef van Buuren, based on mice::mice.impute.2l.norm()