icc_all_by {quest} | R Documentation |
All Six Intraclass Correlations by Group
Description
icc_all_by
computes each of the six intraclass correlations (ICC) in
Shrout & Fleiss (1979) by group. The ICCs differ by whether they treat
dimensions as fixed or random and whether they are for a single variable in
data[vrb.nm]
of the set of variables data[vrb.nm]
.
icc_all_by
also returns information about the linear mixed effects
modeling (using lmer
) used to compute the ICCs as well as
any warning or error messages by group. For an understanding of the six
different ICCs, see the following blogpost:
http://www.daviddisabato.com/blog/2021/10/1/the-six-different-types-of-intraclass-correlations-iccs.
icc_all_by
is a combination of by2
+
try_fun
+ ICC
(ICC
calls lmer
internally).
Usage
icc_all_by(data, vrb.nm, grp.nm, ci.level = 0.95, check = TRUE)
Arguments
data |
data.frame of data. |
vrb.nm |
character vector of colnames from |
grp.nm |
character vector of colnames from |
ci.level |
double vector of length 1 specifying the confidence level. It must range from 0 to 1. |
check |
logical vector of length 1 specifying whether to check the
structure of the input arguments. For example, check whether
|
Details
icc_all_by
internally suppresses any messages, warnings, or errors
returned by lmer
(e.g., "boundary (singular) fit: see
?isSingular") because that information is provided in the returned
data.frame.
Value
data.frame containing the unique combinations of the grouping variables
data[grp.nm]
and each group's intraclass correlations (ICCs), their confidence intervals,
information about the merMod
object from the linear mixed effects model,
and any warning or error messages from lmer
. For an understanding of the
six different ICCs, see the following blogpost:
http://www.daviddisabato.com/blog/2021/10/1/the-six-different-types-of-intraclass-correlations-iccs.
The first columns are always unique.data.frame(data[vrb.nm])
. All other columns are in the
following order with the following colnames:
- icc11_est
ICC(1,1) parameter estimate
- icc11_lwr
ICC(1,1) lower bound of the confidence interval
- icc11_upr
ICC(1,1) lower bound of the confidence interval
- icc21_est
ICC(2,1) parameter estimate
- icc21_lwr
ICC(2,1) lower bound of the confidence interval
- icc21_upr
ICC(2,1) lower bound of the confidence interval
- icc31_est
ICC(3,1) parameter estimate
- icc31_lwr
ICC(3,1) lower bound of the confidence interval
- icc31_upr
ICC(3,1) lower bound of the confidence interval
- icc1k_est
ICC(1,k) parameter estimate
- icc1k_lwr
ICC(1,k) lower bound of the confidence interval
- icc1k_upr
ICC(1,k) lower bound of the confidence interval
- icc2k_est
ICC(2,k) parameter estimate
- icc2k_lwr
ICC(2,k) lower bound of the confidence interval
- icc2k_upr
ICC(2,k) lower bound of the confidence interval
- icc3k_est
ICC(3,k) parameter estimate
- icc3k_lwr
ICC(3,k) lower bound of the confidence interval
- icc3k_upr
ICC(3,k) lower bound of the confidence interval
- lmer_nobs
number of observations used for the linear mixed effects model. Note, this is the number of (non-missing) rows after
data[vrb.nm]
has been stacked together viastack
.- lmer_ngrps
number of groups used for the linear mixed effects model. This is the number of unique combinations of the grouping variables after
data[grp.nm]
.- lmer_logLik
logLik of the linear mixed effects model
- lmer_sing
binary variable where 1 = the linear mixed effects model had a singularity in the random effects covariance matrix or 0 = it did not
- lmer_warn
binary variable where 1 = the linear mixed effects model returned a warning or 0 = it did not
- lmer_err
binary variable where 1 = the linear mixed effects model returned an error or 0 = it did not
- warn_mssg
character vector providing the warning messages for any warnings. If a group did not generate a warning, then the value is NA
- err_mssg
character vector providing the error messages for any warnings. If a group did not generate an error, then the value is NA
References
Shrout, P.E., & Fleiss, J.L. (1979). Intraclass correlations: Uses in assessing rater reliability. Psychological Bulletin, 86(2), 420-428.
See Also
Examples
# one grouping variable
x <- icc_all_by(data = psych::bfi, vrb.nm = c("A2","A3","A4","A5"),
grp.nm = "gender")
# two grouping variables
y <- icc_all_by(data = psych::bfi, vrb.nm = c("A2","A3","A4","A5"),
grp.nm = c("gender","education"))
# with errors
z <- icc_all_by(data = psych::bfi, vrb.nm = c("A2","A3","A4","A5"),
grp.nm = c("age")) # NA for all ICC columns when there is an error