ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

princomp

データに対する主成分分析 (PCA)

構文

[COEFF,SCORE] = princomp(X)
[COEFF,SCORE,latent] = princomp(X)
[COEFF,SCORE,latent,tsquare] = princomp(X)
[...] = princomp(X,'econ')

説明

COEFF = princomp(X) は、np 列のデータ行列 X に対して主成分分析 (PCA) を実行し、負荷量とも呼ばれる主成分係数を返します。X の行は観測値に対応しており、列は変数に対応しています。COEFFpp 列の行列で、各列は 1 主成分の係数を含んでいます。列は成分分散の大きいものから順に並べられます。

princomp は、列平均を減算することで X を中心化しますが、X の列の再スケーリングは行いません。標準化された変数、つまり相関に基づいて主成分分析を実行するには、princomp(zscore(X)) を使用してください。共分散行列または相関行列に対して直接主成分分析を実行するには、pcacov を使用してください。

[COEFF,SCORE] = princomp(X) は、SCORE を返します。これは主成分スコア、つまり、主成分空間内の X の表現です。SCORE の行は観測値に対応しており、列は成分に対応しています。

[COEFF,SCORE,latent] = princomp(X)X の共分散行列を含むベクトル latent を返します。

[COEFF,SCORE,latent,tsquare] = princomp(X)tsquare を返します。これは、各データ点に対するホテリングの T 二乗 (T2) 統計量を含んでいます。

スコアは元のデータを主成分の空間に変換することで形成されるデータです。ベクトル latent の値は SCORE の列の分散です。ホテリングの T 二乗 (T2) 統計量は、データセットの中心からの各観測値の多変量距離を計測します。

n <= p のとき、SCORE(:,n:p)latent(n:p) は必然的にゼロになり、COEFF(:,n:p) の列は X と直交の方向を定義します。

[...] = princomp(X,'econ') は、必然的にゼロにならない latent の要素、および COEFFSCORE の対応する列のみを返します。つまり、n <= p の場合、最初の n-1 のみが返されます。これは、pn よりはるかに大きい場合にかなり高速になります。

Hald データセット内の ingredients データの主成分と、各成分が占める分散を計算します。

load hald;
[pc,score,latent,tsquare] = princomp(ingredients);
pc,latent

pc =

   -0.0678   -0.6460    0.5673    0.5062
   -0.6785   -0.0200   -0.5440    0.4933
    0.0290    0.7553    0.4036    0.5156
    0.7309   -0.1085   -0.4684    0.4844


latent =

  517.7969
   67.4964
   12.4054
    0.2372

次のコマンドとプロットは、2 つの成分が分散の 98% を占めていることを示しています。

cumsum(latent)./sum(latent)
ans =
      0.86597
      0.97886
       0.9996
            1
biplot(pc(:,1:2),'Scores',score(:,1:2),'VarLabels',...
		{'X1' 'X2' 'X3' 'X4'})

この分析方法の詳細例と説明は、「主成分分析 (PCA)」を参照してください。

参考文献

[1] Jackson, J. E., A User's Guide to Principal Components, John Wiley and Sons, 1991, p. 592.

[2] Jolliffe, I. T., Principal Component Analysis, 2nd edition, Springer, 2002.

[3] Krzanowski, W. J. Principles of Multivariate Analysis: A User's Perspective. New York: Oxford University Press, 1988.

[4] Seber, G. A. F., Multivariate Observations, Wiley, 1984.

この情報は役に立ちましたか?