Sequential Chi Square Model Tests (SMT) are a factor retention method where multiple EFAs with increasing numbers of factors are fitted and the number of factors for which the Chi Square value first becomes non-significant is taken as the suggested number of factors. Preacher, Zhang, Kim, & Mels (2013) suggested a similar approach with the lower bound of the 90% confidence interval of the Root Mean Square Error of Approximation (RMSEA; Browne & Cudeck, 1992; Steiger & Lind, 1980), and with the Akaike Information Criterion (AIC). For the RMSEA, the number of factors for which this lower bound first falls below .05 is the suggested number of factors to retain. For the AIC, it is the number of factors where the AIC is lowest.
SMT(
x,
N = NA,
use = c("pairwise.complete.obs", "all.obs", "complete.obs", "everything",
"na.or.complete"),
cor_method = c("pearson", "spearman", "kendall", "poly", "tetra")
)An object of class efa_retention (see print.efa_retention() for
the print method). Its main fields are:
A named numeric vector ("chi", "RMSEA", "AIC") with the
suggested number of factors from the sequential chi-square model tests, the
RMSEA lower bound, and the AIC.
A list with one record per criterion, each holding the criterion values for the null model (zero factors) through the maximum number of factors.
A list of the settings used.
data.frame or matrix. Dataframe or matrix of raw data or matrix with correlations.
numeric. The number of observations. Needs only be specified if a correlation matrix is used.
character. Passed to stats::cor() if raw
data is given as input. Default is "pairwise.complete.obs".
character. Correlation computed from raw data: "pearson",
"spearman", or "kendall" (passed to stats::cor()), or "poly" /
"tetra" for polychoric / tetrachoric correlations of ordinal / binary data
(a two-step estimator with no empty-cell continuity correction).
Default is "pearson".
As a first step in the procedure, a maximum number of factors to extract is determined for which the model is still over-identified (df > 0).
Then, EFAs with increasing numbers of factors from 1 to the maximum number are fitted with maximum likelihood estimation.
For the SMT, first the significance of the chi square value for a model with 0 factors is determined. If this value is not significant, 0 factors are suggested to retain. If it is significant, a model with 1 factor is estimated and the significance of its chi square value is determined, and so on, until a non-significant result is obtained. The suggested number of factors is the number of factors for the model where the chi square value first becomes non-significant.
Regarding the RMSEA, the suggested number of factors is the number of factors for the model where the lower bound of the 90% confidence interval of the RMSEA first falls below the .05 threshold.
Regarding the AIC, the suggested number of factors is the number of factors for the model with the lowest AIC.
In comparison with other prominent factor retention criteria, SMT performed well at determining the number of factors to extract in EFA (Auerswald & Moshagen, 2019). The RMSEA lower bound also performed well at determining the true number of factors, while the AIC performed well at determining the most generalizable model (Preacher, Zhang, Kim, & Mels, 2013).
N_FACTORS() as a wrapper function for this and the other factor
retention criteria.
Other factor retention criteria:
CD(),
EKC(),
HULL(),
KGC(),
MAP(),
NEST(),
PARALLEL(),
SCREE()
SMT_base <- SMT(test_models$baseline$cormat, N = 500)
SMT_base
Run the code above in your browser using DataLab