fitMeasures(fit, c("chisq", "df", "pvalue",
"cfi", "tli",
"rmsea", "rmsea.ci.lower", "rmsea.ci.upper",
"srmr"))Notation
Greek symbols used in SEM and their lavaan output homes
This page lists every Greek symbol used across the tutorial series, its meaning, and where to find the corresponding number in lavaan’s output. The notation follows the simplified lowercase Greek convention used by modern lavaan textbooks (e.g. Beaujean (2014)); we do not use the bold-symbol LISREL matrix form.
Symbols
| Symbol | Name | Meaning | Where in lavaan output |
|---|---|---|---|
| \(\lambda\) | lambda | Factor loading — the regression coefficient linking a latent variable to an observed indicator | Estimate column under =~ blocks; std.all column for the standardised loading |
| \(\beta\) | beta | Structural coefficient — a regression path between variables in the structural model | Estimate column under ~ blocks; std.all for the standardised path |
| \(\psi\) | psi | Latent (co)variance — variance of a latent variable, or covariance between two latent variables | Variances and Covariances sections of summary(fit) |
| \(\theta\) | theta | Residual (co)variance of an observed variable — measurement error | Residual Variances and Residual Covariances sections |
| \(\zeta\) | zeta | Disturbance — residual variance of a latent dependent variable | Variances section, listed under the latent variable’s name |
| \(\varepsilon\) | epsilon | Residual of an observed variable (synonym for \(\theta\) when referring to a single indicator) | Residual Variances section |
| \(a\) | — | Path from \(X\) to mediator \(M\) in a mediation model | Labelled path in lavaan; appears under ~ with its label |
| \(b\) | — | Path from mediator \(M\) to \(Y\) in a mediation model | Labelled path in lavaan; appears under ~ with its label |
| \(c'\) | c-prime | Direct effect of \(X\) on \(Y\) in a mediation model | Labelled path in lavaan |
| \(c\) | c | Total effect of \(X\) on \(Y\) (before decomposition) | Usually computed as \(c' + ab\) via := |
| \(ab\) | — | Indirect effect — the product of \(a\) and \(b\) | Defined parameter via := in lavaan |
| \(\hat{\Sigma}(\theta)\) | Sigma-hat | The model-implied covariance matrix — what the model predicts the observed covariances should be | Not printed directly; underlying every fit index |
| \(S\) | S | The observed sample covariance matrix | SAMPSTAT output; sampleStats in summary() |
| \(\chi^2\) | chi-squared | Model fit statistic comparing \(S\) and \(\hat{\Sigma}(\theta)\) | fitMeasures(fit)["chisq"] |
| \(df\) | degrees of freedom | The number of independent pieces of information available to test the model | fitMeasures(fit)["df"] |
| \(p\) | p-value | Probability of observing a \(\chi^2\) at least as large under the null hypothesis of perfect fit | fitMeasures(fit)["pvalue"] |
| CFI | Comparative Fit Index | Fit index comparing the model to a null (independence) model; \(> .95\) is good | fitMeasures(fit)["cfi"] |
| TLI | Tucker–Lewis Index | Fit index penalising model complexity; \(> .95\) is good | fitMeasures(fit)["tli"] |
| RMSEA | Root mean square error of approximation | Badness-of-fit index; \(< .05\) is close, \(< .08\) is acceptable | fitMeasures(fit)["rmsea"] |
| SRMR | Standardised root mean square residual | Badness-of-fit index; \(< .08\) is good | fitMeasures(fit)["srmr"] |
| \(N\) | sample size | Number of participants in the analysis | nobs(fit) |
| \(R^2\) | R-squared | Proportion of variance in a dependent variable explained by its predictors | summary(fit, rsquare = TRUE) or lavInspect(fit, "rsquare") |
| MI | Modification index | Estimated drop in \(\chi^2\) if a fixed parameter were freed | modindices(fit) output, mi column |
Reading the lavaan output
When you run summary(fit, standardized = TRUE, fit.measures = TRUE), lavaan prints the parameter estimates in sections:
- Latent variables — the
=~blocks. TheEstimatecolumn gives the unstandardised \(\lambda\);std.allgives the fully standardised loading. - Regressions — the
~blocks. TheEstimatecolumn gives the unstandardised \(\beta\);std.allgives the standardised path. - Covariances — the
~~blocks between exogenous variables. These are \(\psi\) (latent) or free covariances (observed). - Variances —
~~blocks for each variable with itself. Latent variances are \(\psi\); observed residual variances are \(\theta\). - Intercepts — means of observed and latent variables.
- Variances (residual) — \(\theta\) for observed variables; \(\zeta\) for latent dependent variables.
For a complete walkthrough of every section, see Tutorial 07 (CFA — practical).
Reading fit indices
The canonical set we use across this series, with the Hu and Bentler (1999) cutoffs:
| Index | Threshold | Good or bad? |
|---|---|---|
| \(\chi^2\) | \(p > .05\) | Good (non-significant) — but sensitive to sample size |
| RMSEA | \(< .08\) (acceptable), \(< .05\) (close) | Badness (lower is better) |
| CFI | \(> .95\) (good), \(> .90\) (acceptable) | Goodness (higher is better) |
| TLI | \(> .95\) (good), \(> .90\) (acceptable) | Goodness (higher is better) |
| SRMR | \(< .08\) | Badness (lower is better) |
To extract all of these in one call:
See also
- Glossary — definitions of every term used in the series.
- Cheat sheet — lavaan syntax reference.
References
Beaujean, A. A. (2014). Latent variable modeling using r: A step-by-step guide. Routledge.
Hu, L., & Bentler, P. M. (1999). Cutoff criteria for fit indexes in covariance structure analysis: Conventional criteria versus new alternatives. Structural Equation Modeling: A Multidisciplinary Journal, 6(1), 1–55. https://doi.org/10.1080/10705519909540118