Calculate small-N corrections for chi^2 model-fit test statistic to adjust for small sample size (relative to model size).
chisqSmallN(fit0, fit1 = NULL, smallN.method = if (is.null(fit1)) c("swain", "yuan.2015") else "yuan.2005", ..., omit.imps = c("no.conv", "no.se"))
lavaan object(s) provided after running the
Additional arguments to the
Four finite-sample adjustments to the chi-squared statistic are currently available, all of which are described in Shi et al. (2018). These all assume normally distributed data, and may not work well with severely nonnormal data. Deng et al. (2018, section 4) review proposed small-N adjustments that do not assume normality, which rarely show promise, so they are not implemented here. This function currently will apply small-N adjustments to scaled test statistics with a warning that they do not perform well (Deng et al., 2018).
numeric vectors: one for the originally
requested statistic(s), along with one per requested
All include the the (un)adjusted test statistic, its df, and the
p value for the test under the null hypothesis that the model fits
perfectly (or that the 2 models have equivalent fit).
The adjusted chi-squared statistic(s) also include(s) the scaling factor
for the small-N adjustment.
Terrence D. Jorgensen (University of Amsterdam; TJorgensen314@gmail.com)
Deng, L., Yang, M., & Marcoulides, K. M. (2018). Structural equation modeling with many variables: A systematic review of issues and developments. Frontiers in Psychology, 9, 580. doi: 10.3389/fpsyg.2018.00580
Shi, D., Lee, T., & Terry, R. A. (2018). Revisiting the model size effect in structural equation modeling. Structural Equation Modeling, 25(1), 21–40. doi: 10.1080/10705511.2017.1369088
HS.model <- ' visual =~ x1 + b1*x2 + x3 textual =~ x4 + b2*x5 + x6 speed =~ x7 + b3*x8 + x9 ' fit1 <- cfa(HS.model, data = HolzingerSwineford1939[1:50,]) ## test a single model (implicitly compared to a saturated model) chisqSmallN(fit1) ## fit a more constrained model fit0 <- cfa(HS.model, data = HolzingerSwineford1939[1:50,], orthogonal = TRUE) ## compare 2 models chisqSmallN(fit1, fit0)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.