[R] varimax rotation in R

Prof Brian Ripley ripley at stats.ox.ac.uk
Tue Feb 17 12:00:10 CET 2004

On Mon, 16 Feb 2004, Maurice McHugh wrote:

> I have used several methods to calculate principal components rotated
> using the varimax procedure.  This is simple enough.  But I would like
> to calculate the % of variance explained associated with each PC before
> and after rotation.
> factanal returns the % of variance explained associated with each PC but
> I cannot seem to get it to change after rotation.

factanal does factor analysis, not principal component analysis.  Factor
rotation makes sense for factor analysis (the latent variables are
rotationally equivariant) but not much sense for PCA (where successive PCs
maximize the variance).  factanal() does a varimax rotation by default 
so that a further varimax rotation does nothing.

What the print method for factanal reports is the same as the print method 
for loadings().  So to continue example(varimax)

new <- varimax(fa$loadings, normalize = FALSE)
class(new$loadings) <- "loadings"

Your description is confused, but it is hard for us to know where the 
confusion lies.

> Many thanks for your help!
> Maurice
> mmchug4 at lsu.edu
> Maurice McHugh
> Department of Geography and Anthropology
> Louisiana State University
> Baton Rouge, LA

Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

More information about the R-help mailing list