アナリティクスの「因子分析」を紹介します。
因子分析は、アンケートの回答データから、質問に答えた背景やモチベーションをつかむことなどに良く利用される統計のアルゴリズムの1つです。
因子分析を行うと、手元のデータにある変数群の背後にある共通性である「因子」あるいは「潜在的な変数」を見つけられます。
因子分析には、1行が1観測対象となっているデータが必要です。また、変数の列には数値型の列のみが選択できます。
そこで、今回はサンプルデータとして、「ビールに求めるもの」に関するアンケートのデータを使用します。このデータは、1行が1人の回答者を表していて、列には値段やサイズに関する質問の回答スコアや、回答者の属性(年代、性別)があります。
なお、質問の回答スコアは100段階で、数値が大きくなるほど、重要度が高くなります。
アナリティクスビューを開き、タイプに「因子分析」を選択します。
変数の列をクリックして、因子分析に使用する列を選択します。シフトキーを押すことで、複数の列を一気に選択できます。
列の指定が完了したら実行することで、因子分析の結果が表示されます。
バイプロットのタブでは、最初の2つの因子(第1因子、第2因子)によって、もとの変数間の関係を可視化したチャートが表示されます。
線はそれぞれの変数を、**点はデータの1行(例: 一人の回答者)**を表します。変数の線が同じ方向に向いている場合は、相関の強い変数の線は同じ方向に伸びます。
また、「カテゴリー」に列を割り当て、「ラベルの値をチャート上に表示」にチェックをつけて因子分析を実行すると、バイプロット上にラベルの情報が表示されます。
寄与率のタブでは、因子分析で作られた軸である第1因子、第2因子によって元データの情報量(ばらつき)をどれだけ表現できるかを確認できます。
寄与率はそれぞれの因子での情報量の表現できている割合で、累積寄与率はそれらの寄与率を足し上げて行った時にどれだけ表現できているのかがわかります。
重み(表)のタブでは、因子ごとの各変数の**因子負荷量(因子が変数に与える影響の強さ)**が表示されます。なお、因子負荷量は−1から1の間の値をとり、−1または1に近づくほど、各因子がそれぞれの変数に与える影響が強いと言えます。
因子負荷量が高い変数を考慮して、例えば、「色」「アロマ」「味わい」の因子負荷量が1に近い、第1因子には「クオリティ」といった共通性を見出せます。
なお同様の情報は、重み(バー)のタブや、
重み(レーダー)のタブでも確認できます。なお、レーダーチャートで表示される因子負荷量は、因子負荷量の絶対値です。
スクリープロットでは、因子の数を増やしていったときの誤差のばらつき(固有値)を可視化しています。誤差のばらつきの減少が収束するあたりが最適な因子の数となります。
なお、スクリープロットで探索した最適な因子の数を使って、因子の数を変更できます。
因子の数を指定すると、指定した因子数での実行結果が表示されます。
データタブでは、元のデータとそれぞれの行(観察対象)に対する因子得点(Factor 1 ~ Factor 3)を確認できます。特定の因子得点が高い場合、その因子の影響が強いと言えます。
因子分析に関する参考資料は下記をご覧ください。
因子分析について、よくある質問とその答えをこちらにまとめました。
Q: 因子作成を実行する時に、裏でデータは標準化はされていますか?
因子分析は常に内部で標準化を行っており、Exploratoryで使用している因子分析のパッケージでも標準化が実行されています。
Q: カテゴリー毎の因子スコアのタブでは、どういった値が可視化されているのでしょうか?
カテゴリーに列を割り当てることで、カテゴリー毎の因子スコアのタブが追加で表示されるようになります。
このタブでは、カテゴリーごとに因子スコア(因子得点)の平均値が表示されるようになっています。
Q: データタブにある「Factor 1 ~ Factor 3」の列はどのように解釈しますか?
因子分析のデータタブにある「Factor 1 ~ Factor 3」はそれぞれのデータに対する因子得点の値となっています。
例えば、「Factor 1が-1.86」、「Factor 2が0.26」、「Factor 3が1.1」だった場合は、Factor 1の-1.86の値が絶対値として高いので、Factor 1の傾向が高いという解釈になります。
例えば、Factor 1の因子は外交性を表していたとしたときに、値がプラスの場合は外交性の傾向が高く、値がマイナスの時にはその逆の特性を持っており内交性の傾向が高いということになります。
因子得点は0に近ければ近いほど平均に近く、プラス、マイナスの値が高ければ平均以上、または平均以下のように解釈するようになっています。
Q: 因子分析で観察対象(行)ごとの因子得点のデータをダウンロードしたい
観察対象(行)ごとの因子得点についてですが、以下のようにデータタブからデータをエクスポートしていただくことで、因子得点を含めたデータをダウンロードすることが可能となっています。
Q: 因子分析を実行した際にデータの全行での結果ではなく一部の行しか使われていない
因子分析で使用している変数に欠損値が大量に含まれていた可能性があります。欠損値がある行は因子分析の計算から除外されるため、結果として全ての行を使って実行されなかったと考えられます。
そのため、因子分析で使用する変数を見直すか、欠損値を補完する必要があります。
欠損値を補完する方法については、こちらのノートをご覧下さい。