Description Usage Arguments Details Value Author(s) References See Also Examples
Estimate an FAmodel
.
1 2 3 4 5 6 7 8 | estFAmodel(Sigma, p, n.obs=NA,
est="factanal",
estArgs=list(scores="none", control=list(opt=list(maxit=10000))),
rotation=if(p==1) "none" else "quartimin", rotationArgs=NULL,
GPFargs=list(Tmat=diag(p), normalize=TRUE, eps=1e-5, maxit=1000),
BpermuteTarget=NULL,
factorNames=paste("Factor", seq(p)),
indicatorNames=NULL)
|
Sigma |
covariance of the data matrix. |
n.obs |
integer indication number of observations in the dataset. |
p |
integer indication number of factors to estimate. |
est |
name of the estimation function. |
estArgs |
list of aarguments passed to the estimation function. |
rotation |
character vector indicating the factor rotation method (see GPArotation for many options). |
rotationArgs |
list of arguments passed to the rotation method,
specifying arguments for the rotation criteria. See |
GPFargs |
list of arguments passed to |
BpermuteTarget |
matrix of loadings. If supplied, this is used to permute the order of estimated factors and change signs. (It is for comparison with other results. |
factorNames |
vector of strings indicating names of factor series. |
indicatorNames |
vector of strings indicating names of indicator series. |
The default est
method and quartimin
rotation give parameters
using standard
(quasi) ML factor analysis (on the correlation matrix and then scaled back).
The function factanal
with no rotation is used to find the initial
(orthogonal) solution. Rotation is then done
(by default with quartimin using GPFoblq
optimization).
factanal
always uses the correlation matrix, so standardizing does
not affect the solution.
If rotation
is "none"
the result of the factanal
estimation is not rotated. In this case, to avoid confusion with a rotated
solution, the factor covariance matrix Phi
is returned as NULL
.
Another possibility for its value would be the identity matrix, but this is
not calculated so NULL
avoids confusion.
The arguments rotation
, rotationArgs
are used for rotation.
The quartimin default uses GPArotation and its default
normalize=TRUE
, eps=1e-5
, maxit=1000
, and Tmat=I
are passed through the rotation method to GPFoblq
.
The estimated loadings, Bartlett predictor matrix, etc.,
are put in the returned FAmodel
(see below).
The Bartlett factor score coefficient matrix can be calculated as
(B' Omega exp(-1) B) exp(-1) B' Omega exp(-1) x
or equivalently as
(B' Sigma exp(-1) B) exp(-1) B' Sigma exp(-1) x
The first is simpler because Omega is diagonal, but breaks down
with a Heywood case, because Omega is then singular (one or
more of its diagonal elements are zero). The second only requires
nonsingularity of Sigma. Typically, Sigma is not singular
even if Omega is singular.
Sigma is calculated from B Phi B' + Omega,
where B, Phi, and Omega are the
estimated values returned from factanal
and rotated.
The data covariance could also be used for Sigma.
(It returns the same result with this estimation method.)
The returned FAmodel
object is a list containing
the estimated loadings matrix.
the covariance of the idiosyncratic component (residuals).
the covariance of the factors.
the Bartlett predictor matrix.
the standardized Bartlett predictor matrix.
a logical indicating if estimation converged.
a logical indicating if rotation converged.
a logical indicating if the rotation is orthogonal.
the uniquenesses.
thearguments of the function call.
A FAmodel
object (see details).
Paul Gilbert and Erik Meijer
Gilbert, Paul D. and Meijer, Erik (2005) Time Series Factor Analaysis with an Application to Measuring Money. Research Report 05F10, University of Groningen, SOM Research School. Available from https://hdl.handle.net/11370/d7d4ea3d-af1d-487a-b9b6-c0816994ef5a.
estTSF.ML
,
rotations
,
factanal
1 2 3 4 5 6 7 8 | data("WansbeekMeijer", package="GPArotation")
fa.unrotated <- estFAmodel(NetherlandsTV, 2, n.obs=2150, rotation="none" )
fa.varimax <- estFAmodel(NetherlandsTV, 2, n.obs=2150, rotation="Varimax" )
fa.eiv <- estFAmodel(NetherlandsTV, 2, n.obs=2150, rotation="eiv" )
fa.oblimin <- estFAmodel(NetherlandsTV, 2, n.obs=2150, rotation="oblimin" )
cbind(loadings(fa.unrotated), loadings(fa.varimax), loadings(fa.oblimin), loadings(fa.eiv))
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.