Re: Explained Variance with R²?

3,948 views
Skip to first unread message
Message has been deleted

Terrence Jorgensen

unread,
Sep 5, 2016, 2:49:25 AM9/5/16
to lavaan
Does the rsquare (R^2/R²) show me the variance for a factor/variable that is explained by the model?
So that a value about .8 or higher indicates a good prediction by the model?

R-squared is the proportion of variance in an outcome the is explained by all predictors of that outcome.  In the case of CFA, the outcomes are the indicators, which are caused by the common factor.  If you also have (observed or latent) variables predicting a common factor, then you will also have an R-squared estimate of the proportion of common-factor variance that is explained by whatever predicts that factor.  So it is just like regression, but SEM fits many simultaneous regression equations, so there is an R-squared for each endogenous variable.

Terrence D. Jorgensen
Postdoctoral Researcher, Methods and Statistics
Research Institute for Child Development and Education, the University of Amsterdam

Samantha Seiter

unread,
Dec 14, 2017, 5:24:45 AM12/14/17
to lavaan
Hi Terrence,

I'm also looking for a way to find how much variance in my DVs (latents) is explained by my IVs (predictors).

I've tried inspect(fit, 'r2') but that only gives me the variance explained by each of my latent variables.

How can I find out how much variance is explained by each predictor?

Many thanks.
Samantha.

Terrence Jorgensen

unread,
Dec 14, 2017, 6:35:29 AM12/14/17
to lavaan
I'm also looking for a way to find how much variance in my DVs (latents) is explained by my IVs (predictors).

I've tried inspect(fit, 'r2') but that only gives me the variance explained by each of my latent variables.

Are you sure you have latent DVs in your model?  That syntax will return R-squared for all outcomes, both latent and observed.  Behold:

library(lavaan)
example
(sem)
inspect
(fit, 'r2')

   x1    x2    x3    y1    y2    y3    y4    y5    y6    y7    y8 dem60 dem65
0.846 0.947 0.761 0.723 0.475 0.574 0.702 0.667 0.570 0.643 0.687 0.200 0.965

How can I find out how much variance is explained by each predictor?

That is not available, only the variance explained by all predictors of an outcome.  Decomposing R-squared into components due to separate factors is only possible when the predictors have correlations == 0 (e.g., orthogonal designs / balanced groups in ANOVA).  If predictors are correlated, then they share some credit for explaining variance, so there is no R-squared per predictor.  There is the concept of partial-eta-squared, which is the proportional reduction in residual variance after adding an effect, but that is not provided by lavaan.  You would have to run a model with and without an effect to calculate how much the residual variance decreases, and divide that by the larger residual variance to express it as a proportion (i.e., partial-eta-squared).

Samantha Seiter

unread,
Dec 15, 2017, 7:49:49 AM12/15/17
to lavaan
I see - thanks very much Terrence.
Reply all
Reply to author
Forward
0 new messages