rotationsDF {GPArotateDF} | R Documentation |
Rotations
Description
Optimize factor loading rotation objective.
Usage
cubimax.df(A, Tmat=diag(ncol(A)), normalize=FALSE, eps=1e-5, maxit=1000)
fssQ.df(A, Tmat=diag(ncol(A)), kij=2, normalize=FALSE, eps=1e-5, maxit=1000)
fssT.df(A, Tmat=diag(ncol(A)), kij=2, normalize=FALSE, eps=1e-5, maxit=1000)
Arguments
A |
an initial factor loadings matrix to be rotated. |
Tmat |
initial rotation matrix. |
kij |
minimum additional number of forced simple structure loadings in a pair of factors. |
normalize |
parameter passed to optimization routine ( |
eps |
parameter passed to optimization routine ( |
maxit |
parameter passed to optimization routine ( |
Details
The functions listed here optimize a rotation objective. They can be used directly or the
function name can be passed to factor analysis functions like factanal
.
Available rotations are
cubimax.df | orthogonal | Cubimax |
fssQ.df | oblique | Forced Simple Structure (see Vignette) |
fssT.df | orthogonal | Forced Simple Structure (see Vignette) |
The argument kij
for Forced Simple Structure is the minimum number
of forced simple structure loadings in a pair of factors, in addition to
the number of factors itself. Meaningful values are integers (1, ..., items - factors )
Value
A list (which includes elements used by factanal
) with:
loadings |
Lh from |
Th |
Th from |
Table |
Table from |
method |
A string indicating the rotation objective function. |
orthogonal |
A logical indicating if the rotation is orthogonal. |
convergence |
Convergence indicator from |
Phi |
t(Th) %*% Th. The covariance matrix of the rotated factors. This will be the identity matrix for orthogonal rotations so is omitted (NULL) for the result from GPForth.df. |
Author(s)
Coen A. Bernaards and Robert I. Jennrich
References
Bernaards, C.A. and Jennrich, R.I. (2005) Gradient Projection Algorithms and Software for Arbitrary Rotation Criteria in Factor Analysis. Educational and Psychological Measurement, 65, 676–696.
Jennrich, R.I. (2004) Derivative free gradient projection algorithms for rotation, Psychometrika, 69(3), 475–480.
See Also
GPForth.df
,
GPFoblq.df
,
ff.cubimax
,
ff.fss
,
factanal
Examples
data(ability.cov)
x <- factanal(factors = 3, covmat = ability.cov, rotation="none")
fssT.df(x$loadings, kij = 2)
fssQ.df(x$loadings, kij = 4)
# 3 different methods
data("WansbeekMeijer", package="GPArotation")
fa.unrotated <- factanal(factors = 3, covmat=NetherlandsTV, rotation="none")
#
fa.varimax <- GPForth.df(loadings(fa.unrotated), method = "varimax", normalize = TRUE)
fa.cubimax <- cubimax.df(loadings(fa.unrotated), normalize = TRUE)
fa.quartimax <- GPForth.df(loadings(fa.unrotated), method = "quartimax", normalize = TRUE)
print(cbind(loadings(fa.varimax), loadings(fa.cubimax), loadings(fa.quartimax)), digits = 2)