These functions extracts random effect variances as well as random-intercept-slope-correlation of mixed effects models. Currently, merMod, glmmTMB, stanreg and brmsfit objects are supported.

re_var(x)

get_re_var(x, comp = c("tau.00", "tau.01", "tau.11", "rho.01", "sigma_2"))

Arguments

x

Fitted mixed effects model (of class merMod, glmmTMB, stanreg or brmsfit). get_re_var() also accepts an object of class icc.lme4, as returned by the icc function.

comp

Name of the variance component to be returned. See 'Details'.

Value

get_re_var() returns the value of the requested variance component, re_var() returns all random effects variances.

Details

The random effect variances indicate the between- and within-group variances as well as random-slope variance and random-slope-intercept correlation. Use following values for comp to get the particular variance component:

"sigma_2"

Within-group (residual) variance

"tau.00"

Between-group-variance (variation between individual intercepts and average intercept)

"tau.11"

Random-slope-variance (variation between individual slopes and average slope)

"tau.01"

Random-Intercept-Slope-covariance

"rho.01"

Random-Intercept-Slope-correlation

The within-group-variance is affected by factors at level one, i.e. by the lower-level direct effects. Level two factors (i.e. cross-level direct effects) affect the between-group-variance. Cross-level interaction effects are group-level factors that explain the variance in random slopes (Aguinis et al. 2013).

References

Aguinis H, Gottfredson RK, Culpepper SA. 2013. Best-Practice Recommendations for Estimating Cross-Level Interaction Effects Using Multilevel Modeling. Journal of Management 39(6): 1490–1528 (doi: 10.1177/0149206313478188 )

See also

Examples

library(lme4) fit1 <- lmer(Reaction ~ Days + (Days | Subject), sleepstudy) # all random effect variance components re_var(fit1)
#> Within-group-variance: 654.941 #> Between-group-variance: 612.090 (Subject) #> Random-slope-variance: 35.072 (Subject.Days) #> Slope-Intercept-covariance: 9.604 (Subject) #> Slope-Intercept-correlation: 0.066 (Subject)
# just the rand. slope-intercept covariance get_re_var(fit1, "tau.01")
#> Subject #> 9.604334
sleepstudy$mygrp <- sample(1:45, size = 180, replace = TRUE) fit2 <- lmer(Reaction ~ Days + (1 | mygrp) + (Days | Subject), sleepstudy) re_var(fit2)
#> Within-group-variance: 605.877 #> Between-group-variance: 44.955 (mygrp) #> Between-group-variance: 615.539 (Subject) #> Random-slope-variance: 38.305 (Subject.Days) #> Slope-Intercept-covariance: 1.074 (Subject) #> Slope-Intercept-correlation: 0.007 (Subject)