見出し画像

[PSPP]因子分析③主成分分析

主成分分析

主成分分析は、まとめるということでは因子分析に似ているけれども、方向性が違うという説明をしました。

分かりやすいように、因子分析で用いた科目を使って説明しましょう。

因子分析では、算数・国語・理科・社会の背後にある共通した能力(因子)を探りました。一方、主成分分析では、科目の合成得点を求めます。

ここで注意していただきたいのは、合計得点ではなく合成得点だということです。例えば、国語の平均点と標準偏差が極端に低かった場合を考えて見ましょう。どんなに国語が得意な子どもでも、国語で高得点は取れていないことになります。そのまま合計してしまうと、国語の点数も、算数・理科・社会の点数も同じ価値として扱われてしまいます。そうすると、国語が得意な子どもの能力は低く評価されてしまうことになります。

このような場合に、科目得点に重み付けを行う合成得点を算出すると、不公平が緩和されます。

では、240名分の算数・国語・理科・社会の得点データを元に、主成分分析を行ってみましょう。
データは、次のように100点満点の得点が240名分科目ごとに縦に並んでいます。

具体的な手順は、因子分析とほとんど同じです。

・[分析]→[因子分析]を選択。

・[変数]に「算数」「国語」「理科」「社会」を指定。

・[因子抽出]で以下の設定をする。
・[表示]で[回転のない因子解]にチェック。
・[抽出]は[固有値平均]にチェックし、「0」倍以上にしておく。
・[回転]は、標準設定で[なし]になっているはずなので、変更する必要はない。

・[OK]をクリック。


出力の見方

まず、因子分析と同じように「共通性」が表示されます。

「初期」は初期の固有値を意味しますが、主成分分析では、すべて「1」になります。

「説明される分散の和」も因子分析と同様の出力ですが、左端が因子ではなく成分になっています。また、回転を行っていませんので、「回転後の負荷量の平方和」は表示されません。
「累積%」を見ると、第3主成分までで、全分散の94.8%が説明できているようです。

「成分行列」に表示される数値は重みと言います。第1主成分はすべての重みが正ですから「総合学力」と言えるでしょう。第2主成分は「国語」だけが大きく負の重みになっています。理科・社会は暗記の要素が強く、算数も解法を覚えていないと解けませんから、「読解力と知識のどちらが優位か」と言えるでしょう。第3主成分は「理科」だけが正の重みで、残りが負の重みとなっており、しかも算数の負の重みが他の科目より強くなっています。これは非常に解釈が難しいと言えます。仮に「科学的思考の有無」とでもしておきましょう。
しかし、第2主成分まででも86.97%を説明できているので、無理に第3主成分を採用する必要もないでしょう。


主成分得点

主成分得点は、重みを用いて算出します。その数値は、各変数の標準得点を用いて算出した値を、さらに標準偏差で割って標準化したものです。ですから、平均が「0」、標準偏差が「1」になります。

SPSSでは、オプションで算出でき、データに返すこともできます。しかし、PSPPでは、自分で計算するしかありません。
ただし、それほど難しくはないので、PSPPで主成分得点を求めてみましょう。

まずは、各変数の標準得点を求めます。これは、(得点-平均点)÷標準偏差です。

しかし、PSPPでは標準得点は簡単に求めることができます。

・[分析]→[記述統計量]→[記述統計量]を選択。

・[変数]に「算数」「国語」「理科」「社会」を指定。
・[統計]のチェックをすべてはずす。
・[オプション]の[標準得点を変数として保存]にチェック。

・[OK]をクリック。

つぎに、標準化前の主成分得点を計算してみます。

第1主成分の重みは、算数が0.88、国語が0.82、理科が0.91、社会が0.88ですので、

・[変換]→[変数の計算]をクリック。

・[目標変数]に任意の名前を付ける。ここでは「非標準化第一主成分得点」としておきます。
・[数式]に、(0.88*Z算数)+(0.82*Z国語)+(0.91*Z理科)+(0.88*Z社会)と入力。

・[OK]をクリック。

これで、標準化前の主成分得点が算出されましたので、次は先ほど算数・国語・理科・社会の標準得点を求めたのと同じように、「非標準化第一主成分得点」から標準得点を求めます。

そして。[変数ビュー]から、変数名を「第1主成分得点」に変更します。

第2主成分、第3主成分の主成分得点も同様にして求めることができます。

この記事が気に入ったらサポートをしてみませんか?