SLi | R Documentation |
Compute an iterated Schmid-Leiman target rotation (SLi). This algorithm applies Browne's partially-specified Procrustes target rotation to obtain a full-rank bifactor solution from a rank-deficient (Direct) Schmid-Leiman procedure. Note that the target matrix is automatically generated based on the salient argument. Note also that the algorithm will converge when the partially-specified target pattern in the n-th iteration is equivalent to the partially-specified target pattern in the (n-1)th iteration.
SLi(
R,
SL = NULL,
rotate = "geominQ",
numFactors = NULL,
facMethod = "fals",
salient = 0.2,
urLoadings = NULL,
freelyEstG = TRUE,
gFac = 1,
maxSLiItr = 20,
rotateControl = NULL,
faControl = NULL
)
R |
(Matrix) A correlation matrix |
SL |
(Matrix, NULL) A (rank-deficient) Schmid-Leiman (SL) bifactor solution (e.g., from a Schmid-Leiman or Direct Schmid-Leiman rotation). If NULL, the function will estimate the SL solution using the |
rotate |
(Character) Designate which rotation algorithm to apply. See the |
numFactors |
(Vector) The number of latent factors at each level of analysis. For example, c(3, 1) estimates three latent factors in the first-order common factor model and one latent factor in the second-order common factor model (i.e., 3 group factors and 1 general factor). |
facMethod |
(Character) The method used for factor extraction
(
|
salient |
(Numeric) A threshold parameter used to dichotomize factor loadings to create the target matrix. The default value is .20 (in absolute value) which is based on the Abad et al., 2017 application of this method. |
urLoadings |
(Matrix, NULL) A full-rank matrix of unrotated factor loadings to be rotated using the (automatically generated) target matrix. If specified as NULL, a full-rank matrix of factor loadings will be extracted using the |
freelyEstG |
(Logical) Specify whether the general factor loadings are freely estimated (in the partially-specified target matrix). If set to FALSE, only general factor loadings above the salient threshold will be estimated in the partially-specified target rotation. |
gFac |
(Numeric, Vector) The position of the general factor(s) to be estimated. Solutions with multiple general factors may be estimated. Must either (a) freely estimate all loadings on the general factors or (b) only freely estimate general factor loadings that are above the salient threshold. The default column position is 1. |
maxSLiItr |
(Numeric) The maximum number of iterations for the SLi procedure. Typically, 10 iterations is usually sufficient to converge (cf. Abad et al., 2017). The default is 20 iterations. |
rotateControl |
(List) A list of control values to pass to the factor rotation algorithms.
|
faControl |
(List) A list of optional parameters passed to the factor
extraction (
|
This function iterates the Schmid-Leiman target rotation and returns several relevant output.
loadings: (Matrix) The bifactor solution obtain from the SLi procedure.
iterations: (Numeric) The number of iterations required for convergence
rotateControl: (List) A list of the control parameters passed to the faMain
function.
faControl: (List) A list of optional parameters passed to the factor extraction (faX
) function.
Casey Giordano (Giord023@umn.edu)
Niels G. Waller (nwaller@umn.edu)
Abad, F. J., Garcia-Garzon, E., Garrido, L. E., & Barrada, J. R. (2017). Iteration of partially specified target matrices: Application to the bi-factor case. Multivariate Behavioral Research, 52(4), 416-429.
Giordano, C. & Waller, N. G. (under review). Recovering bifactor models: A comparison of seven methods.
Moore, T. M., Reise, S. P., Depaoli, S., & Haviland, M. G. (2015). Iteration of partially specified target matrices: Applications in exploratory and Bayesian confirmatory factor analysis. Multivariate Behavioral Research, 50(2), 149-161.
Reise, S. P., Moore, T. M., & Haviland, M. G. (2010). Bifactor models and rotations: Exploring the extent to which multidimensional data yield univocal scale scores. Journal of Personality Assessment, 92(6), 544-559.
Schmid, J., & Leiman, J. M. (1957). The development of hierarchical factor solutions. Psychometrika, 22(1), 53-61.
Other Factor Analysis Routines:
BiFAD()
,
Box26
,
GenerateBoxData()
,
Ledermann()
,
SchmidLeiman()
,
faAlign()
,
faEKC()
,
faIB()
,
faLocalMin()
,
faMB()
,
faMain()
,
faScores()
,
faSort()
,
faStandardize()
,
faX()
,
fals()
,
fapa()
,
fareg()
,
fsIndeterminacy()
,
orderFactors()
,
print.faMB()
,
print.faMain()
,
promaxQ()
,
summary.faMB()
,
summary.faMain()
## Generate a bifactor model
bifactor <- matrix(c(.35, .61, .00, .00,
.35, .61, .00, .00,
.35, .61, .00, .00,
.35, .00, .61, .00,
.35, .00, .61, .00,
.35, .00, .61, .00,
.35, .00, .00, .61,
.35, .00, .00, .61,
.35, .00, .00, .61),
nrow = 9, ncol = 4, byrow = TRUE)
## Model-implied correlation (covariance) matrix
R <- bifactor %*% t(bifactor)
## Unit diagonal elements
diag(R) <- 1
Out1 <- SLi(R = R,
numFactors = c(3, 1))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.