[R] Factor Rotation

Prof Brian D Ripley ripley at stats.ox.ac.uk
Thu Apr 27 08:01:15 CEST 2000

On Wed, 26 Apr 2000, Barry Cooke wrote:

> How does one rotate the loadings from a principal component analysis?
> Help on function prcomp() from package mva mentions rotation:
> Arguments
> retx		a logical value indicating whether the rotated
> 		variables should be returned.
> Values
> rotation	the matrix of variable loadings (i.e., a matrix 
> 		whose olumns contain the eigenvectors).  The 
> 		function princomp returns this in the element 
> 		loadings.
> x		if retx is true the value of the rotated data
> 		(the data multiplied by the rotation matrix) 
> 		is returned.
> but it is unclear to me exactly how the rotation is to be done.

You are being confused by prcomp's S-compatible notation.  All PCAs are a
`rotation' of the coordinate system to a basis in which the first component
has maximum variance, the next has maximal variance subject to
uncorrelatedness with the first etc.

> For instance how would one specify a varimax rotation?  Or are
> loadings, by default, rotated by the varimax method in prcomp()?
> MASS v2 describes the function rotate() on p. 409-410; however R
> complements does not cover this.  A search of CRAN indicates Peter
> Ho <peter at esb.ucp.pt> asked the same question Sept 29, 1999, but
> I found no reply.

There is no code to do this in R that I know of. Rotation in the sense
you are describing it belongs with factor analysis, and that is not
currently implemented in R.  Indeed `loadings' is FA notation applied to
PCA, and this subject is bedevilled with confusion between the two.
In my view most of the rotation criteria only make sense for FA.

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 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch

More information about the R-help mailing list