主成分分析とは? R を使った分析例や因子分析との違いを解説

主成分分析とは

主成分分析とは多次元データのもつ情報をできるだけ損わずに低次元空間に情報を縮約する多変数解析の一種です。例えば、身長と体重(二次元のデータ)から肥満度を示すBMI(一次元のデータ)に変換するのは主成分分析の代表例です。このように、主成分分析では複数の変数をなるべく少ない変数にデータの情報量を保ちながら縮小させることができます。

主成分分析をする目的

情報量の多いデータを要約して特徴を可視化する

普通ビッグデータの解析には3次元を上回るような高次元データがほとんどです。つまり変数の数が非常に多くなってしまい、データの構造を可視化することが不可能になります。しかし、変数間には相関があったり、重要な変数は少なかったりするため、情報を失うことなく変数を減らすことが可能だという考えが生まれました。できるだけ情報を失うことなくデータの次元を減らすことを次元削減と呼び、その代表的な手法が主成分分析です。特に3次元以下まで次元を削減できればデータの可視化が可能となります。

主成分分析によって得た新たな変数をクラスター分析や回帰分析に利用する

  1. 多重共線性の解決:主成分分析によって作られる新たな変数を主成分と呼びますが、主成分は互いに独立であるため、回帰分析をする際に多重共線性を気にしなくてもよくなります。
  2. 新変数の作成クラスター分析の際には、より縮小された次元を使うことで、少ない計算量で分析を行えるようになります。また、より特徴づけられた変数を使うことになるため結果の解釈が示唆に富んだものとなる場合があります。


主成分分析の考え方

①次元を縮小する

例えば、国語と数学いう二次元のデータセットがあった場合に、その人の総合的なテストの得点を考えます。

国語テストの得点をx1、数学テストの得点をx2という変数名で表すとすると、国語と数学の両方を考慮した総合的なテスト得点(主成分得点)はz=a1x1+a2x2と表せます。

ここでa1とa2は重みづけを表す係数であり、総合的なテスト得点を表すために国語と数学の得点をどのように調整するかということを表しています。

例えばa1=a2=0.5であればz=0.5x1+0.5x2となり、国語と数学の得点の平均を表すことになる。一方でa1=0.3、 a2=0.7とすれば数学の得点をより重視した指標ということになります。


これを一般化すると、以下のような画像であらわされます。

②主成分得点の分散を最大化させるような係数を求める

主成分分析をする際、a1とa2はzの分散を最大化させるような値を求めます。

分散とはデータの散らばり度合いを表すものであり、分散が大きいほどデータが散らばっています。データが散らばっている=個体差が表れやすい=情報量が大きい、と解釈できるため、なるべくzが情報量を多く含ませるようなa1とa2を定めるために分散を最大化させます。

(なお、分散の最大化自体はRやPythonなどの統計計算ソフトで簡単に計算することができます。)


データが二次元の場合は第一主成分と第二主成分という二つの変数が作成されます。

第一主成分では欠けていた情報を第二主成分で補っています。

一般にデータがn次元の場合、n個の主成分得点が作成されます。



主成分分析の結果の解釈

zの分散をλと表すとすると、それぞれの主成分がどれくらいデータを説明しているかという寄与率を表すことができます。

寄与率とは、ある主成分軸がデータの何割を説明しているかを表しています。下の図では、第一主成分がデータを60%説明しており、第二主成分がデータの40%を説明しています。このようにデータが二次元、つまり二つの変数であらわされるようなケースでは二つの主成分でデータの100%を説明します。


寄与率に着目する理由は、どの主成分を使えばよいかという指標になるからです。上の画像の例では変数が二つしかないため二つの主成分を使えばデータの100%を説明できました。一方で、大抵のデータでは二桁、ときには三桁を超える変数がある場合があります。こういった場合、主成分の数も二桁や三桁になってしまい、目的であったデータの要約ができなくなります。データの情報量を削減するために主成分を選択するわけですが、この際にデータの何割を説明しているかの基準となる寄与率を参考にすることで、データの特徴をつかんでいる主成分を採用することができます。

一般に下のような図で寄与率と累積寄与率を表します。

主成分の数が多い場合は、この累積寄与率が90%を超えるようなところまで主成分を採用します。

Rを使った主成分分析の例

統計科学研究所の成績のデータを利用し、主要因分析を行ってみます。

使用するデータは、エクセルなどで以下のように各教科の成績が個体ごとに記録されているものです。

下の画像が実際に主成分分析をした結果です。

PC1とあるのが第一主成分であり、今回のデータは9個の変数があるため第9主成分まであります。

第一主成分に着目すると、この列が意味しているのは

z=0.363×国語のスコア+0.369×社会のスコア+0.357×数学のスコア+0.367×理科のスコア+0.354×音楽のスコア+0.313×美術のスコア+0.139×体育のスコア+0.317×技術家庭のスコア×0.357×英語のスコア

という式を表しています。

この連立方程式の中で体育の係数だけ他と比較して特に低いことから、この第一主成分は筆記試験の成績を表しているといえます。
第二主成分に着目すると、こちらは体育の係数が特に大きく、体育に関する主成分であることがわかります。この式では体育の係数の符号がマイナスになっていることから、体育の得点が高いほど第二主成分は小さくなります。つまり、第二主成分が小さいほど体育が得意であるということがわかります。

主成分得点をプロットした図を作成すると、以下のようなものになります。この図では横軸が第一主成分、縦軸が第二主成分であり、数字は個体の識別番号を示しています。

さて、先ほど第一主成分は筆記試験、第二主成分は体育の試験に影響するものであると解釈しました。下の図から、第一主成分の主成分得点が大きい個体は筆記試験が得意な個体、第二主成分の主成分得点が小さい個体は体育が特異な個体、という風に分類して解釈できます。よって右上に行くほど筆記試験と体育どちらも得意な文武両道のセグメント、左下に行くほどどちらも不得意なセグメントであるという風に解釈できます。


主成分分析の注意点

主成分得点の解釈は自分で行う

主成分得点はデータの情報量を損なわないようにしながら次元を減らすという手法です。なので、データが縮小された変数である主成分得点は多くの情報量を持ちながらも、基本的にはz=a1x1+a2x2+...+anxnという数式の形であらわされます。それぞれの主成分得点がどのような意味を持つかは、係数の値に注目して人間が解釈する必要があります。

主成分分析自体が目的になることはほとんどない

主成分分析は人間にとってわかりやすいデータを構築するための手法の1つです。回帰分析のように、売上や利益に直接影響する要因を推定するわけではありません。クラスター分析や回帰分析、その他の多変量解析を行う前段階の分析といえます。
主成分分析はその性質上ビジネスの場面で使われることはほとんどなく、データ分析の実務で使われることが多くなる分析方法です。


主成分分析と因子分析との違い・使い分け

主成分分析は因子分析と非常によく似ている分析ですが、考え方が異なります。

因子分析はデータに影響を与えている要因の共通因子を抽出する方法であり、因子(原因)がデータ(結果)に影響を与えていると考えます。
一方、主成分分析では多数のデータから少数の主成分として表す方法であり、データ(原因)から主成分(結果)が作られます。

このような性質を持つため、同じデータで因子分析と主成分分析を行うと主成分と共通因子の値は非常に似た値を持つことになります。



繰り返しになりますが、主成分分析はデータの情報量を削減してデータの特徴を可視化したり要約したりするのに使われます。対して因子分析では複数のデータからその背後にある潜在的要素を発見するのに使われます(例えば国語と英語のテストの点数に対して因子分析を行うことで、二つのテストの点数に影響を与える潜在的要素である言語能力を発見することができます)。因子分析に関して、詳しく知りたいは、次の記事「因子分析とは?」をご覧ください。

主成分分析 の実施をご検討であれば、まずはお気軽にご相談ください。
漠然と検討している段階の方からのお問い合わせも歓迎です

This is some text inside of a div block.
ご相談・お見積り (無料)

主成分分析 で使えるアンケート (質問項目) テンプレート

個社のご要望に応じて作成いたしますのでお問い合わせください
お問い合わせ

主成分分析を調べた人は、他にもこんな用語をチェックしています

主成分分析 をご検討なら
Quest Researchにご相談ください

実施企業数

40
社以上

調査実績

225
件以上

Intv.実績

2,120
人以上

掲載パネル数

1,900
万人以上

主成分分析 の実施等に関するご相談はこちら

以下フォームにご記入の上、お問い合わせください。担当より2営業日以内にご連絡いたします。
※営業目的のお問い合わせはご遠慮ください。また、一部のお問い合わせに対する返信はできない場合がございますので、予め、ご了承ください。
調査依頼以外の方は「その他」を選択して下さい

下記「個人情報の取扱いについて」をご確認いただき、同意の上で送信ボタンをクリックして下さい。

【事業者及び個人情報保護管理者】
株式会社Quest Research
代表取締役 南 健太
TEL:03-4500-8405

【個人情報の利用目的】
当社は、下記の目的で個人情報を利用いたします。
①  お問合せの受付と回答
②  資料等の送付 

【個人情報を第三者に提供する場合について】
当社は、下記の場合を除いて個人情報を第三者に提供することはありません。
①  本人の同意がある場合
②  法令に基づく場合

【個人情報の取扱いの委託を行う場合について】
当社は、上記の利用目的の達成に必要な範囲内において個人情報の取扱いを第三者に委託する場合があります。法令及び当社の基準に従って委託先を選定し、機密保持契約を締結します。委託先に対しては個人情報の適切な取扱いを監督指導します。

【個人情報の開示等の請求について】
当社は、保有個人データに関する「利用目的の通知」「開示」「訂正、追加又は削除」「利用の停止、消去又は第三への提供の停止」(以下「開示等」という)の請求に応じています。開示等を請求される場合は、当社「個人情報窓口」までお申し出ください。

【個人情報を与えることの任意性及び当該情報を与えなかった場合に本人に生じる結果について】
当社への個人情報の提供は本人の任意です。ただし、提供頂けない場合は【個人情報の利用目的】に記載した業務に支障をきたし、本人が不利益を蒙る場合があります。

【個人情報に関するお問合せ先】
〒107-0062 東京都港区南青山一丁目12番3号 
LIFORK MINAMIAOYAMA N205
株式会社Quest Research「個人情報窓口」
TEL:03-4500-8405

画面が切り替わらない場合は、こちらをクリックしてください。
エラーが発生しました。インターネット接続を確認の上、再度お試しください。それでもエラーが発生する場合は、お手数をおかけしますが、support@quest-research.co.jp 宛にメールにてご連絡ください。