Re: [R] PCA problem in R

From: Dennis Shea <>
Date: Tue 16 Aug 2005 - 02:56:28 EST

>>>On Sat, 13 Aug 2005, Alan Zhao wrote:
>>>>When I have more variables than units, say a 195*10896 matrix which has
>>>>10896 variables and 195 samples. prcomp will give only 195 principal
>>>>components. I checked in the help, but there is no explanation that why
>>>>this happen.

>Zheng Zhao

Just yesterday I subscribed to r-help because I am planning on learning the basics of R ... today. :-) Thus, I am not sure about the history of this question.

The above situation, more variables than samples, is commonly encounterd in the climate studies. Consider annual mean temperatures for 195 years on a coarse 72 [lat] x 144 [lon] grid [72*144=10368 spatial variables].

Let S be the number of grid points and T be the number of years. I think there is a theorem (?Eckart-Young?) which states that the maximum number of unique eigenvalues is min(S,T). In your case 195 eigenvalues is correct. I speculate that the underlying function transposes the input data matrix and computes the the TxT [rather than SxS] covariance matrix and solves for the eigenvalues/vectors. It then uses a linear transformation to get the results for the original input data matrix.

Computationally, the above is much faster and uses less memory. mailing list PLEASE do read the posting guide! Received on Tue Aug 16 03:11:36 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:39:49 EST