find_variables {insight} | R Documentation |
Find names of all variables
Description
Returns a list with the names of all variables, including response value and random effects.
Usage
find_variables(
x,
effects = "all",
component = "all",
flatten = FALSE,
verbose = TRUE
)
Arguments
x |
A fitted model. |
effects |
Should variables for fixed effects, random effects or both be returned? Only applies to mixed models. May be abbreviated. |
component |
Should all predictor variables, predictor variables for the conditional model, the zero-inflated part of the model, the dispersion term or the instrumental variables be returned? Applies to models with zero-inflated and/or dispersion formula, or to models with instrumental variable (so called fixed-effects regressions). May be abbreviated. Note that the conditional component is also called count or mean component, depending on the model. |
flatten |
Logical, if |
verbose |
Toggle warnings. |
Value
A list with (depending on the model) following elements (character vectors):
-
response
, the name of the response variable -
conditional
, the names of the predictor variables from the conditional model (as opposed to the zero-inflated part of a model) -
cluster
, the names of cluster or grouping variables -
dispersion
, the name of the dispersion terms -
instruments
, the names of instrumental variables -
random
, the names of the random effects (grouping factors) -
zero_inflated
, the names of the predictor variables from the zero-inflated part of the model -
zero_inflated_random
, the names of the random effects (grouping factors)
Model components
Possible values for the component
argument depend on the model class.
Following are valid options:
-
"all"
: returns all model components, applies to all models, but will only have an effect for models with more than just the conditional model component. -
"conditional"
: only returns the conditional component, i.e. "fixed effects" terms from the model. Will only have an effect for models with more than just the conditional model component. -
"smooth_terms"
: returns smooth terms, only applies to GAMs (or similar models that may contain smooth terms). -
"zero_inflated"
(or"zi"
): returns the zero-inflation component. -
"dispersion"
: returns the dispersion model component. This is common for models with zero-inflation or that can model the dispersion parameter. -
"instruments"
: for instrumental-variable or some fixed effects regression, returns the instruments. -
"location"
: returns location parameters such asconditional
,zero_inflated
,smooth_terms
, orinstruments
(everything that are fixed or random effects - depending on theeffects
argument - but no auxiliary parameters). -
"distributional"
(or"auxiliary"
): components likesigma
,dispersion
,beta
orprecision
(and other auxiliary parameters) are returned.
Note
The difference to find_terms()
is that
find_variables()
returns each variable name only once, while
find_terms()
may return a variable multiple times in case of
transformations or when arithmetic expressions were used in the formula.
Examples
data(cbpp, package = "lme4")
data(sleepstudy, package = "lme4")
# some data preparation...
cbpp$trials <- cbpp$size - cbpp$incidence
sleepstudy$mygrp <- sample(1:5, size = 180, replace = TRUE)
sleepstudy$mysubgrp <- NA
for (i in 1:5) {
filter_group <- sleepstudy$mygrp == i
sleepstudy$mysubgrp[filter_group] <-
sample(1:30, size = sum(filter_group), replace = TRUE)
}
m1 <- lme4::glmer(
cbind(incidence, size - incidence) ~ period + (1 | herd),
data = cbpp,
family = binomial
)
find_variables(m1)
m2 <- lme4::lmer(
Reaction ~ Days + (1 | mygrp / mysubgrp) + (1 | Subject),
data = sleepstudy
)
find_variables(m2)
find_variables(m2, flatten = TRUE)