Principal Component Analysis
Hi,
On Wed, Feb 29, 2012 at 9:52 AM, Blaz Simcic <blazsimcic at yahoo.com> wrote:
Dear R buddies, I?m trying to run Principal Component Analysis, package princomp: http://stat.ethz.ch/R-manual/R-patched/library/stats/html/princomp.html.
I'm going to assume you actually mean the princomp() function.
My question is: why do I get different results with pca = princomp (x, cor = TRUE) and pca = princomp (x, cor = FALSE) even when I standardize variables in my matrix?
Because you didn't use the standardization that's used in princomp, most likely, but you don't include reproducible code so it's impossible to actually answer your question. Look at this for ideas, though. Using scale() is equivalent to using cor=TRUE.
data(iris) iris.pcaCOR <- princomp(iris[,1:4], cor=TRUE) iris.pcaSCALE <- princomp(scale(iris[,1:4]), cor=TRUE) summary(iris.pcaCOR)
Importance of components:
Comp.1 Comp.2 Comp.3 Comp.4
Standard deviation 1.7083611 0.9560494 0.38308860 0.143926497
Proportion of Variance 0.7296245 0.2285076 0.03668922 0.005178709
Cumulative Proportion 0.7296245 0.9581321 0.99482129 1.000000000
summary(iris.pcaSCALE)
Importance of components:
Comp.1 Comp.2 Comp.3 Comp.4
Standard deviation 1.7083611 0.9560494 0.38308860 0.143926497
Proportion of Variance 0.7296245 0.2285076 0.03668922 0.005178709
Cumulative Proportion 0.7296245 0.9581321 0.99482129 1.000000000
Sarah Goslee http://www.functionaldiversity.org