概要

主成分分析は、調査項目間の類似関係を調べたり、変数を合成(要約)します。主な適用場面は、顧客の嗜好性や行動に基づくセグメンテーション、ポジショニングマップの作成が挙げられます。

なるべく情報を落とさずに少数の変数(次元)に要約する分析手法です。複数項目のデータを2次元の図で視覚化する場合によく使われます。また、調査項目ごとの指向性の強さや関連性を定量化・視覚化することにも使われます。

類似する分析手法にコレスポンデンス分析があります。属性などのカテゴリカルデータを含むデータを分析する際は、コレスポンデンス分析を使用します。

(例)教科ごとのテスト点数を主成分分析で分析

図の解釈

  • 矢印の長さ:嗜好性の強さ(長いほどバラつき、違いがある)。
  • 矢印の向き:向きが近いほど項目間の関連性が強い。
  • プロット(点):類似度の高い調査対象ほど近くにプロットされる。

上記結果より、英語・国語・社会の成績の良いグループ(文系)、理科・算数の成績のよいグ ループ(理系)の二つに分けられそうであることがわかります。

主成分分析の実行

サンプルデータとしてRに組み込みのデータセットUSArrestsを使います。USArrests は、1973年、アメリカの50州における犯罪検挙率(10万人あたりの検挙数)等のデータです。Murderは殺人検挙率、Assaultは暴行検挙率、UrbanPopは都市人口、Rapeレイプ検挙率です。

step.1 準備

# データの確認
head(USArrests)
##            Murder Assault UrbanPop Rape
## Alabama      13.2     236       58 21.2
## Alaska       10.0     263       48 44.5
## Arizona       8.1     294       80 31.0
## Arkansas      8.8     190       50 19.5
## California    9.0     276       91 40.6
## Colorado      7.9     204       78 38.7

step.2 主成分分析の実行

主成分分析を実行するためにprincomp()関数を使います。

USA.pca <- princomp(USArrests)

step.3 分析結果の出力

主成分分析結果を描画するために、biplot()関数を使います。

biplot(USA.pca)

step.4 主成分(固有ベクトル)を出力する

USA.pca$loadings
##
## Loadings:
##          Comp.1 Comp.2 Comp.3 Comp.4
## Murder                         0.995
## Assault  -0.995
## UrbanPop        -0.977 -0.201
## Rape            -0.201  0.974
##
##                Comp.1 Comp.2 Comp.3 Comp.4
## SS loadings      1.00   1.00   1.00   1.00
## Proportion Var   0.25   0.25   0.25   0.25
## Cumulative Var   0.25   0.50   0.75   1.00

step.5 主成分得点を出力する

主成分得点はprincomp()関数の結果の列scoresに入っています。なお、princomp()関数では、各主成分得点の平均が0になるように変換(標準化)した結果が入っています。

USA.pca$scores

結果の解釈

  • 州ごとの暴行検挙率(Assault)に大きな違いがあり、寄与率が高い。
  • 殺人検挙率(Murder)とレイプ検挙率(Rape)は、暴行検挙率と関連性があるものの、州ごとのバラツキは暴行検挙率と比較し小さい。
  • 都市人口(UrbanPop)と犯罪(暴行、殺人)の関連性は小さいものの、レイプ検挙率の間には関連性がある。

「データから価値を創造する」一般社団法人データマーケティングラボラトリー

Copyright© DML All Rights Reserved.