Description Usage Arguments Details Value Note Author(s) References See Also Examples
SMC
is a function that compares the best lower-bound estimates to the communalities with the model-based communalities implied by a factor solution of dimension m.
1 | SMC(R, LM)
|
R |
(Regularized) correlation |
LM |
(Rotated) factor loadings |
This function can be used to qualitatively assess the choice of dimensionality (as well as the fit) in the m-factor model. This is done using the concept of communalities. The communality refers to the amount of variance of feature j explained by the latent features. It is then of interest to compare lower-bound estimates of the (population) communalities to the extracted communalities under the m-factor model.
Guttman (1956) gave the best possible lower-bound estimates to the communalities, which can essentially be considered squared multiple correlations: the proportion of variance in feature j that is explained by the remaining p - 1 features. To assess a factor model, these might be compared to the retrieved estimated communalities under the m-factor model. When the chosen latent dimensionality is sufficient then one would expect that, for almost all features, the retrieved communality approximately equals or exceeds its corresponding lower-bound estimate. If this is not the case then one might have extracted too few factors.
The function returns a matrix
.
The first column (labeled 'SMC') contains the lower-bound estimates to the communalities.
The second column (labeled 'Communalities') contains the retrieved estimated communalities under the m-factor model.
Note that the choice of orthogonal rotation does not affect the model-implied communality estimates.
Carel F.W. Peeters <cf.peeters@vumc.nl>
Guttman, L. (1956). Best possible systematic estimates of communalities. Psychometrika, 21:273–285.
Peeters, C.F.W. et al. (2019). Stable prediction with radiomics data. arXiv:1903.11696 [stat.ML].
1 2 3 4 5 6 7 8 9 10 11 12 | ## Simulate some high-dimensional data according to the factor model
simDAT <- FAsim(p = 50, m = 5, n = 40)
## Regularize the correlation matrix
RegR <- regcor(simDAT$data)
## Fit 5-factor model to the regularized correlation matrix
fit <- mlFA(RegR$optCor, m = 5)
## Compare lower-bound estimates to communalities with model-implied ones
C <- SMC(RegR$optCor, fit$Loadings)
print(C)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.