主成分分析は、多数の数値データに含まれる傾向を少ない指標へ整理するための代表的な統計手法です。
売上、年齢、購入回数、アンケート評価、センサー値など、複数の変数を同時に扱う場面では、個別の数字を眺めるだけでは全体像をつかみにくいことがあります。
そこで活用されるのが、データのばらつきを保ちながら情報量を圧縮する次元削減という考え方です。
この記事では主成分分析の意味、仕組み、分散、固有値、固有ベクトル、主成分、寄与率の関係を、数式の見方も含めてわかりやすく解説します。
主成分分析の意味と全体像

それではまず主成分分析の意味と、データ分析で果たす役割について解説していきます。
複数の変数を少数の軸にまとめる考え方
主成分分析とは、複数の変数が持つ情報を、より少ない新しい変数へ変換して把握しやすくする分析方法です。
新しく作られる変数は主成分と呼ばれ、元の変数を一定の重みで組み合わせたものになります。
たとえば店舗の顧客データに、購入金額、来店回数、滞在時間、会員ランク、クーポン利用回数があるとします。
これらは別々の項目ですが、購入に積極的な顧客ほど複数の項目で高い値を示すかもしれません。
主成分分析を使うと、そのような共通傾向を購買活動の強さのような一つの軸として表現できます。
元の項目を消して単純化するだけではなく、データの特徴をできるだけ失わないように軸を作る点が重要です。
変数が十個、二十個と増えた場合でも、第一主成分と第二主成分の二軸で散布図を作れば、対象同士の似ている点や異なる点を直感的に確認しやすくなります。
主成分分析の中心的な目的は、情報をなるべく保ちながら変数の数を減らし、複雑なデータ構造を見やすくすることです。
次元削減として使われる理由
データに含まれる変数の数は、数学では次元と呼ばれます。
身長と体重の二項目なら二次元、画像の画素値が千項目なら千次元のデータです。
次元が多くなるほど、データの比較、可視化、予測モデルの学習は難しくなる傾向があります。
特に説明変数が多すぎると、似た情報を持つ項目が重複し、分析結果が不安定になる場合もあります。
主成分分析では、元の変数を第一主成分、第二主成分、第三主成分という順に並べ、必要なところまで残します。
これにより、十次元のデータを二次元や三次元に整理することが可能です。
可視化のしやすさと情報量の両方を考えながら次元を減らせるため、探索的なデータ分析でよく利用されます。
| 元データの状態 | 主成分分析後の見方 |
|---|---|
| 変数が多く比較しにくい | 少数の主成分で全体傾向を確認する |
| 似た意味の項目が多い | 共通する変動を一つの軸へ集約する |
| 図にしにくい高次元データ | 第一主成分と第二主成分で配置を把握する |
| 分析モデルが複雑になりやすい | 必要な情報を残して入力変数を減らす |
主成分分析でわかることと注意点
主成分分析によってわかるのは、データにどのような大きな変動パターンがあるかという点です。
第一主成分は、対象間の違いを最も大きく説明できる方向です。
第二主成分は、第一主成分では捉えられない次に大きな違いを示します。
たとえば学習データで第一主成分が総合的な学習量、第二主成分が理系科目と文系科目の得意傾向を表すことがあります。
ただし主成分は、分析ソフトが自動で意味のある名前を付けてくれるものではありません。
各変数がどの程度主成分に関わっているかを確認し、人が解釈する必要があります。
また、主成分分析は因果関係を証明する手法ではありません。
二つの変数が一緒に動いていても、片方がもう片方の原因とは限らない点に注意が必要でしょう。
分散と相関によるデータ構造
続いては主成分分析の土台になる分散と相関を確認していきます。
分散が示すデータの広がり
分散とは、各データが平均値からどの程度離れているかを表す指標です。
値の散らばりが大きい変数は分散が大きく、値が平均付近に集まる変数は分散が小さくなります。
主成分分析では、データの分散が大きい方向を優先して見つけます。
これは、対象を見分けるための情報が多い方向ほど、データの違いをよく表していると考えるためです。
平均を x̄ とし、データを x1、x2、…、xn とすると、分散は各値と平均の差を二乗して平均した量として考えられます。
分散が大きいほど、データは広い範囲に分布しています。
二乗を使う理由は、平均より小さい値と大きい値の差が相殺されないようにするためです。
主成分分析では、単に値が大きい項目ではなく、対象ごとの差が大きく現れる方向に注目します。
相関が強い変数に含まれる共通情報
相関は、二つの変数が一緒に増減する関係の強さを示す考え方です。
身長と体重、購入金額と購入点数、気温と冷たい飲料の販売数などには正の相関が見られることがあります。
一方で、価格と購入数のように、一方が増えるほどもう一方が減る関係は負の相関として表されます。
相関が強い項目は、異なる名前で記録されていても、背後にある共通の傾向を含んでいる可能性があります。
主成分分析は、その共通する変動を一つの主成分へまとめるのに向いています。
たとえば国語、数学、英語、理科、社会の点数に正の相関があるなら、第一主成分は総合的な学力傾向を表すかもしれません。
標準化が必要になる場面
主成分分析では、変数の単位や尺度が大きく異なる場合に標準化を行うのが一般的です。
売上が円単位、来店回数が回数、満足度が五段階評価のままでは、数値の桁が大きい売上だけが分析結果に強く影響することがあります。
標準化は、各変数から平均を引き、標準偏差で割る処理です。
処理後の各変数は平均がゼロ、分散がおおむね一になります。
標準化後の値は、元の値から平均を引き、その結果を標準偏差で割って求めます。
単位の違いによる影響を抑え、各変数の変動パターンを公平に比較するための前処理です。
ただし、売上規模そのものを重視したい場合まで機械的に標準化すると、分析の目的とずれる可能性があります。
どの変数を同じ重みで扱いたいのかを考えて、共分散行列を使うか、相関行列を使うかを決めることが大切です。
主成分と主成分得点の仕組み
続いては主成分がどのように作られ、主成分得点が何を示すのかを確認していきます。
第一主成分から順に作られる新しい指標
主成分は、元の変数を足し合わせて作る新しい指標です。
ただし単純な合計ではなく、各変数へ重みを付けて計算します。
第一主成分は、データの分散が最も大きくなるように選ばれた方向です。
第二主成分は、第一主成分と重ならない方向のうち、分散が最も大きいものになります。
このようにして、第三主成分、第四主成分と続いていきます。
主成分同士は直交するように作られるため、同じ情報を重複して表しにくい構造です。
直交は二次元のグラフでいえば、横軸と縦軸が直角に交わる関係と考えると理解しやすいでしょう。
主成分得点による対象の位置づけ
各データに対して計算される主成分上の値を、主成分得点と呼びます。
主成分得点を見ることで、個人、商品、店舗、機械、地域などの対象が、新しい軸の上でどこに位置するかを確認できます。
たとえば第一主成分が購買意欲を表すと解釈できる場合、第一主成分得点が高い顧客は購買行動が活発な層とみなせる可能性があります。
第二主成分が価格志向と品質志向の違いを示すなら、縦軸の位置から購買スタイルの違いも見えてきます。
主成分得点の散布図は、似た対象の集まりや、通常と異なる外れ値を探す際にも役立ちます。
| 主成分得点の位置 | 読み取り方の例 |
|---|---|
| 第一主成分が高い | 総合的な活動量や規模が大きい可能性 |
| 第一主成分が低い | 総合指標では控えめな傾向の可能性 |
| 第二主成分が高い | 第一主成分とは別の特徴が強い可能性 |
| 原点付近にある | 全体平均に近い性質を持つ可能性 |
| 他から大きく離れる | 特徴的な対象や入力ミスの確認候補 |
主成分負荷量による意味づけ
主成分の意味を解釈する際には、主成分負荷量を確認します。
主成分負荷量は、各変数が主成分とどの程度強く関係しているかを示す値です。
絶対値が大きいほど、その変数は主成分の特徴づけに強く関わっています。
すべての科目点数で負荷量が正かつ大きい場合、第一主成分は全科目に共通する成績傾向と解釈しやすくなります。
数学と理科が正、国語と社会が負の値を持つ場合には、理系寄りと文系寄りの対比を表す軸かもしれません。
負荷量の符号は方向を表しており、主成分全体の符号を反転しても分析上の本質は変わりません。
そのため、正と負のどちらが優れているかではなく、どの変数群が同じ方向に動くかに注目して解釈します。
固有値と固有ベクトルの基礎
続いては主成分分析の計算で重要になる固有値と固有ベクトルを確認していきます。
固有ベクトルが示す主成分の方向
固有ベクトルは、主成分がどの方向を向くかを決める数値の組です。
二つの変数で考える場合、第一主成分の方向は平面上の矢印として表せます。
その矢印がどちらへ向くかを決めるのが固有ベクトルです。
元の変数が三つなら三次元空間、変数が百個なら百次元空間の方向として扱われます。
実際には高次元の方向を目で見ることは難しくても、固有ベクトルに含まれる係数を見れば、各変数がどの程度主成分へ寄与するかを読み取れます。
主成分分析では、共分散行列または相関行列から固有ベクトルを求めます。
第一主成分は、各変数に固有ベクトルの要素を掛けて足し合わせた形で表されます。
係数の大きさと符号が、主成分の方向と変数ごとの関わり方を示します。
固有値が示す情報量の大きさ
固有値は、その主成分が説明する分散の大きさを示す値です。
固有値が大きい主成分ほど、データ全体の違いを多く表しています。
通常は固有値の大きい順に第一主成分、第二主成分、第三主成分と並びます。
たとえば第一主成分の固有値が大きく、第二主成分以降が急に小さくなる場合、データの主要な特徴は第一主成分に集約されている可能性があります。
一方で複数の固有値が近い大きさなら、データには複数の重要な変動パターンが存在すると考えられます。
固有値は主成分の重要度を測るための基礎となる数値です。
共分散行列から計算へ進む流れ
主成分分析の計算は、一般にデータの中心化または標準化から始まります。
中心化とは、各変数から平均値を引き、平均をゼロにそろえる処理です。
次に変数同士の関係をまとめた共分散行列、または相関行列を作ります。
その行列に対して固有値分解を行うと、固有値と固有ベクトルが得られます。
固有ベクトルを使って元データを変換すれば、各対象の主成分得点が求められます。
統計ソフトやPython、R、Excelの機能を使えば計算自体は実行できますが、前処理と結果の解釈は利用者が判断する部分です。
固有ベクトルは主成分の向き、固有値はその主成分が説明する分散の大きさを表します。
二つを分けて理解すると、主成分分析の出力表を読みやすくなります。
寄与率と主成分数の判断
続いては寄与率の見方と、何個の主成分を残すべきかを確認していきます。
寄与率が表す説明できる割合
寄与率とは、各主成分がデータ全体の分散をどの程度説明しているかを割合で示したものです。
各主成分の固有値を、固有値の合計で割ることで求められます。
第一主成分の寄与率が四十パーセントなら、データのばらつきの約四割を第一主成分だけで表現できるという意味です。
ただし、寄与率が高いことだけで主成分の解釈が正しいとは限りません。
負荷量、散布図、業務知識を組み合わせて、主成分が実務上どのような特徴を表すかを確認する必要があります。
寄与率は情報の残り具合を判断する指標として活用します。
累積寄与率による次元数の選択
累積寄与率は、第一主成分から順に寄与率を足し上げた値です。
二つの主成分を残すと決めた場合は、第一主成分と第二主成分の寄与率の合計を見ます。
可視化が目的なら二次元または三次元へ絞ることが多く、累積寄与率だけでなく見やすさも判断材料になります。
予測モデルの入力を減らす目的なら、分析対象や精度要件に応じてより多くの主成分を残すことがあります。
| 主成分 | 寄与率の例 | 累積寄与率の例 | 主な判断 |
|---|---|---|---|
| 第一主成分 | 42パーセント | 42パーセント | 最大の変動を把握する |
| 第二主成分 | 23パーセント | 65パーセント | 二次元の可視化を検討する |
| 第三主成分 | 14パーセント | 79パーセント | 追加情報の必要性を確認する |
| 第四主成分 | 8パーセント | 87パーセント | モデル用途に応じて残す |
七割から九割程度の累積寄与率を一つの目安として使うことはありますが、すべての分析に当てはまる固定の基準ではありません。
医療機器の異常検知のように情報損失を小さくしたい場面と、顧客分布を大まかに説明したい場面では、適切な主成分数が異なります。
スクリープロットと解釈可能性
主成分数を決める際には、固有値を大きい順に並べたスクリープロットも使われます。
グラフの傾きが急から緩やかへ変わる地点は、重要な主成分と細かなばらつきの境目を考える手がかりになります。
ただし、グラフだけで機械的に決めるのではなく、残した主成分を説明できるかどうかも重要です。
寄与率がわずかに低くても、業務上の明確な意味を持つ主成分なら分析に残す価値があります。
反対に、寄与率が高くても、特定の外れ値や測定条件だけを表す軸なら慎重に扱うべきでしょう。
数値上の基準と現場での解釈を両立させることが、実用的な主成分分析につながります。
主成分分析の活用手順と注意点
続いては実務や研究で主成分分析を使う手順と、結果を扱う際の注意点を確認していきます。
データ準備から可視化までの流れ
まず、分析の目的を明確にします。
顧客を分類したいのか、製品の特徴を比較したいのか、予測モデルの変数を減らしたいのかによって、必要な前処理と評価方法が変わります。
次に欠損値、入力ミス、極端な外れ値を確認します。
主成分分析は分散を重視するため、異常に大きな値が一件あるだけでも軸の方向が影響を受けることがあります。
その後、変数の尺度を確認し、必要なら標準化を行います。
主成分を計算したら、寄与率、累積寄与率、負荷量、主成分得点の散布図を順に見ていくと、解釈を進めやすくなります。
主成分分析は計算結果だけを出す作業ではありません。
目的の設定、データ品質の確認、標準化の判断、負荷量の解釈までを一連の工程として扱うことが重要です。
よくある誤解と分析上の落とし穴
主成分分析では、第一主成分が常に最も重要な意味を持つとは限りません。
第一主成分は統計的に分散を最も説明する軸ですが、業務上知りたい差異が第二主成分以降に現れる場合もあります。
また、主成分分析は連続的な数値データに適した手法です。
都道府県名や商品カテゴリのような名義尺度を、そのまま数値へ置き換えて投入すると、不自然な距離関係が生じることがあります。
変数間の関係が直線的ではない場合にも、主成分分析だけでは十分に構造を捉えられない可能性があります。
非線形の複雑な構造を調べたいときは、t-SNE、UMAP、カーネル主成分分析などを検討する場面もあるでしょう。
結果をレポートへ落とし込む方法
レポートでは、まず分析対象、使用した変数、標準化の有無を明記します。
次に、各主成分の寄与率と累積寄与率を示し、何個の主成分を採用したかを説明します。
主成分の名前は、負荷量の高い変数を根拠にして付けると伝わりやすくなります。
たとえば購入額、購入頻度、閲覧時間の負荷量が高ければ、第一主成分を顧客エンゲージメント軸と表現できます。
散布図を掲載する場合は、近い位置の対象が似た傾向を持つこと、遠い位置の対象は特徴が異なる可能性があることを補足すると親切です。
ただし、図の位置だけで顧客や商品を断定的に評価せず、元データや現場の背景も照らし合わせましょう。
主成分分析の結果は意思決定の材料であり、単独で結論を決めるものではありません。
まとめ
主成分分析とは、複数の変数に含まれる情報を、少数の主成分へ整理する次元削減の手法です。
第一主成分はデータの分散を最も大きく説明する方向であり、第二主成分以降は第一主成分と重ならない追加の特徴を表します。
主成分の方向を示すのが固有ベクトル、説明できる分散の大きさを示すのが固有値です。
さらに、寄与率と累積寄与率を確認すれば、どの程度の情報を残しているかを判断できます。
分析前には、欠損値、外れ値、単位の違い、標準化の必要性を確認することが欠かせません。
主成分負荷量と主成分得点を組み合わせて読むことで、データの全体傾向、対象の違い、似たグループを把握しやすくなります。
分散、固有値、固有ベクトル、寄与率のつながりを理解すれば、主成分分析の結果をより正確に実務へ活かせるでしょう。