R の質問というよりは統計に関する質問ですが、それでも...
主成分分析を考えてみましょう。これは、一連の相関変数を新しい一連の非相関 (直交) 変数 (主成分、PC) に変換します。少数の PC が元のデータセットのほぼすべての変動性を説明するのは、通常の場合です。iris
Rで組み込みのデータセットを使用する:
data <- iris[,1:4] # iris dataset, excluding species column
pca <- prcomp(data,retx=T, scale.=T) # principal components analysis
PC <- pca$x # the principal components
summary(pca)
これを生成します:
Importance of components:
PC1 PC2 PC3 PC4
Standard deviation 1.7084 0.9560 0.38309 0.14393
Proportion of Variance 0.7296 0.2285 0.03669 0.00518
Cumulative Proportion 0.7296 0.9581 0.99482 1.00000
したがって、最初の主成分である PC1 は、データセットの変動の 73% を説明し、最初の 2 つ (PC1 と PC2) を合わせると、変動の 96% を説明します。
編集:以下の@erskaのコメント/質問への回答:
cor(data,PC)
これを生成します:
PC1 PC2 PC3 PC4
Sepal.Length 0.8901688 -0.36082989 0.27565767 0.03760602
Sepal.Width -0.4601427 -0.88271627 -0.09361987 -0.01777631
Petal.Length 0.9915552 -0.02341519 -0.05444699 -0.11534978
Petal.Width 0.9649790 -0.06399985 -0.24298265 0.07535950
これは、 、、および とPC1
高い相関があり、 と中程度の負の相関があることを示しています。ほとんどがランダムな変動で構成されているため、これは驚くべきことではありません。これは PCA の典型的なパターンです。Sepal.Length
Petal.Length
Petal.Width
Sepal.Width
PC4
PCAの仕組みについて誤解があるかもしれません。たとえば、元のデータセットに変数がある場合、定義によりn
、PCA は主成分を識別し、説明された変動性の割合で並べ替えます (つまり、PC1 が最も変動性を説明するなど)。報告する数をアルゴリズムに指定できますが(たとえば、PC1 だけを報告するか、PC1 と PC2 を報告するなど)、計算では常にPC が生成されます。n
n