Compute R-squared values of linear (mixed) models, or
pseudo-R-squared values for generalized linear (mixed) models, or a
Bayesian version of R-squared for regression models for stanreg
and brmsfit
objects.
r2(x, n = NULL, loo = FALSE)
x | Fitted model of class |
---|---|
n | Optional, a |
loo | Logical, if |
For linear models, the r-squared and adjusted r-squared values.
For linear mixed models, the r-squared and Omega-squared values.
For glm
objects, Cox & Snell's and Nagelkerke's pseudo r-squared values.
For glmerMod
objects, Tjur's coefficient of determination.
For brmsfit
or stanreg
objects, the Bayesian version of r-squared is computed, calling rstantools::bayes_R2()
.
If loo = TRUE
, for brmsfit
or stanreg
objects a LOO-adjusted version of r-squared is returned.
For linear models, the r-squared and adjusted r-squared value is returned,
as provided by the summary
-function.
For linear mixed models, an r-squared approximation by computing the
correlation between the fitted and observed values, as suggested by
Byrnes (2008), is returned as well as a simplified version of
the Omega-squared value (1 - (residual variance / response variance),
Xu (2003), Nakagawa, Schielzeth 2013), unless n
is specified.
If n
is given, for linear mixed models pseudo r-squared measures based
on the variances of random intercept (tau 00, between-group-variance)
and random slope (tau 11, random-slope-variance), as well as the
r-squared statistics as proposed by Snijders and Bosker 2012 and
the Omega-squared value (1 - (residual variance full model / residual
variance null model)) as suggested by Xu (2003) are returned.
For generalized linear models, Cox & Snell's and Nagelkerke's
pseudo r-squared values are returned.
For generalized linear mixed models, the coefficient of determination
as suggested by Tjur (2009) (see also cod
). Note
that Tjur's D is restricted to models with binary response.
The ("unadjusted") r-squared value and its standard error for
brmsfit
or stanreg
objects are robust measures, i.e.
the median is used to compute r-squared, and the median absolute
deviation as the measure of variability. If loo = TRUE
,
a LOO-adjusted r-squared is calculated, which comes conceptionally
closer to an adjusted r-squared measure.
More ways to compute coefficients of determination are shown
in this great GLMM faq.
Furthermore, see r.squaredGLMM
or
rsquared
for conditional and marginal
r-squared values for GLMM's.
If n
is given, the Pseudo-R2 statistic is the proportion of
explained variance in the random effect after adding co-variates or
predictors to the model, or in short: the proportion of the explained
variance in the random effect of the full (conditional) model x
compared to the null (unconditional) model n
.
The Omega-squared statistics, if n
is given, is 1 - the proportion
of the residual variance of the full model compared to the null model's
residual variance, or in short: the the proportion of the residual
variation explained by the covariates.
The r-squared statistics for linear mixed models, if the unconditional
model is also specified (see n
), is the difference of the total
variance of the null and full model divided by the total variance of
the null model.
Alternative ways to assess the "goodness-of-fit" is to compare the ICC
of the null model with the ICC of the full model (see icc
).
Bolker B et al. (2017): GLMM FAQ.
Byrnes, J. 2008. Re: Coefficient of determination (R^2) when using lme() (https://stat.ethz.ch/pipermail/r-sig-mixed-models/2008q2/000713.html)
Kwok OM, Underhill AT, Berry JW, Luo W, Elliott TR, Yoon M. 2008. Analyzing Longitudinal Data with Multilevel Models: An Example with Individuals Living with Lower Extremity Intra-Articular Fractures. Rehabilitation Psychology 53(3): 370–86. doi: 10.1037/a0012765
Nakagawa S, Schielzeth H. 2013. A general and simple method for obtaining R2 from generalized linear mixed-effects models. Methods in Ecology and Evolution, 4(2):133–142. doi: 10.1111/j.2041-210x.2012.00261.x
Rabe-Hesketh S, Skrondal A. 2012. Multilevel and longitudinal modeling using Stata. 3rd ed. College Station, Tex: Stata Press Publication
Raudenbush SW, Bryk AS. 2002. Hierarchical linear models: applications and data analysis methods. 2nd ed. Thousand Oaks: Sage Publications
Snijders TAB, Bosker RJ. 2012. Multilevel analysis: an introduction to basic and advanced multilevel modeling. 2nd ed. Los Angeles: Sage
Xu, R. 2003. Measuring explained variation in linear mixed effects models. Statist. Med. 22:3527-3541. doi: 10.1002/sim.1572
Tjur T. 2009. Coefficients of determination in logistic regression models - a new proposal: The coefficient of discrimination. The American Statistician, 63(4): 366-372
rmse
for more methods to assess model quality.
#> R-squared: 0.827 #> Omega-squared: 0.826data(efc) fit <- lm(barthtot ~ c160age + c12hour, data = efc) r2(fit)#> R-squared: 0.256 #> adjusted R-squared: 0.254# Pseudo-R-squared values efc$services <- ifelse(efc$tot_sc_e > 0, 1, 0) fit <- glm(services ~ neg_c_7 + c161sex + e42dep, data = efc, family = binomial(link = "logit")) r2(fit)#> Cox & Snell's R-squared: 0.023 #> Nagelkerke's R-squared: 0.030# Pseudo-R-squared values for random effect variances fit <- lmer(Reaction ~ Days + (Days | Subject), sleepstudy) fit.null <- lmer(Reaction ~ 1 + (Days | Subject), sleepstudy) r2(fit, fit.null)#>#>#> R-squared (tau-00): 0.061 #> R-squared (tau-11): 0.753 #> R-squared: 0.030 #> Omega-squared: -0.000