From: Dennis Shea <shea_at_cgd.ucar.edu>

Date: Tue 16 Aug 2005 - 02:56:28 EST

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Aug 16 03:11:36 2005

Date: Tue 16 Aug 2005 - 02:56:28 EST

**[SNIP]>>
**

>>>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.
*

**[SNIP]
**

*>Sincerely,
**>Zheng Zhao
**>Aug-14-2005
**>______________________________________________
*

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.

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html 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
*