chisqSmallN {semTools} | R Documentation |
Small-N correction for chi^2
test statistic
Description
Calculate small-N corrections for chi^2
model-fit test
statistic to adjust for small sample size (relative to model size).
Usage
chisqSmallN(fit0, fit1 = NULL, smallN.method = if (is.null(fit1))
c("swain", "yuan.2015") else "yuan.2005", ..., omit.imps = c("no.conv",
"no.se"))
Arguments
fit0 , fit1 |
lavaan object(s) provided after running the
|
smallN.method |
|
... |
Additional arguments to the |
omit.imps |
|
Details
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).
Value
A list
of numeric
vectors: one for the originally
requested statistic(s), along with one per requested smallN.method
.
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.
Author(s)
Terrence D. Jorgensen (University of Amsterdam; TJorgensen314@gmail.com)
References
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
Examples
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)