[R] trouble with prcomp()

Scott Robbins Loarie loarie at stanford.edu
Mon Jun 14 09:35:24 CEST 2004


Thanks very much for showing me these functions,

In prcomp(), the documentation says that Value: x is "the data
multiplied by the 'rotation' matix".  Using sample data:

data(iris)
iris<-as.matrix(iris[,1:4])
pcprim<-prcomp(iris, scale=TRUE)

Why does iris%*%pcprim$rotation (the data multiplied by the rotation
matrix) not equal pcprim$x?

Thanks very much,

Scott


On Mon, 14 Jun 2004, Prof Brian Ripley wrote:

> Why are you using the OPRHANED multiv library for a facility covered by
> princomp() and prcomp() in base R?  The list might be able to help you
> with the latter, but no one is supporting multiv (hence its status).
>
> On Sun, 13 Jun 2004, Scott Robbins Loarie wrote:
>
> > I am having trouble using the pca function in the multiv library.
> > I am trying to generate the values found in $rproj by using $evecs to
> > calculate linear combinations of my input data.  However, I have been not
> > been able to correctly calculate the $rproj values.
> >
> > Using the following standard sample data, why does iris%*%pcprim$evecs[,]
> > not equal pcprim$rproj?
> >
> > data(iris)
> > iris<-as.matrix(iris[,1:4])
> > pcprim<-pca(iris)
>
> --
> 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