コンテンツにスキップ

因子分析

複数の数値列の背後にある共通の要因を探して、因子1、因子2… の列にまとめます。アンケートの設問のように「結局なにを測っているのか」を整理したいときに使います。

入出力

ポート内容
入力データまとめたい数値列を持つデータ
出力データ因子1、因子2… の列。「処理後残す列」で選んだ列は左側にそのまま付きます

バイプロットはボニートくんで開きます。 ノードのポートには出ません。実行したあとプレビューフィールドの右上に出るボタンを押すと、そのままバイプロットが開きます(この機能のボニートくんはこの 1 ページだけです)。

出力は 1 つだけです。 固有ベクトルや寄与率は出ません。それが要るときは主成分分析(PCA)を使ってください。

元の対象列は出力データに残りません。 残したい列は「処理後残す列を選択する」で選んでください。

Spark エンジンでは動きません。

設定項目

処理対象列を選択
まとめる元の列。数値の列を複数選びます。
処理後残す列を選択する
結果と一緒に残しておく列。ID や名前など、後から見分けに使う列を選びます。

アルゴリズムオプション

因子数を入力
いくつの因子にまとめるか。空にすると対象列と同じ数になります。対象列の数より大きい値を入れると、入れなかったのと同じ扱いになります。
乱数シードを固定する
整数を入れると毎回同じ結果になります。考え方は乱数シードを参照。

グラフオプション

色分けする列を選択
散布図の点を色分けする列。グループごとのまとまりを見たいときに使います。
ラベルとして表示させる列を選択
点の脇に出す文字。どの行がどこにあるかを確かめたいときに使います。

バイプロットの読み方

点が 1 行、赤い矢印が元の列 1 つです。 横軸が第 1 成分、縦軸が第 2 成分で、3 つめ以降の成分は描かれません。

見るところ読み方
点のかたまり近い点どうしは、選んだ列全体の傾向が似ている行です
矢印の並び右側にある矢印ほど第 1 成分に強く効き、上側にある矢印ほど第 2 成分に強く効く列です

エラーと対処

どのエラーも、入力データか設定を直して実行し直せば消えます。

処理対象列に欠損値がある

処理対象列に欠損値が含まれています。欠損値を除外するか補完してください。

直し方 — 欠損値処理で埋めるか、欠損のある行を外します

処理対象列に数値以外がある

処理対象列に数値型以外のデータが含まれてます。型変換をするか、数値型以外の列を除去してください。

直し方 — 列の型変更で数値にするか、その列を外します

よく使う例

1. アンケートの背景要因を探る

お題 — 設問が 30 問あり、何を測っているのか整理したい

入力 — 設問ごとの点数が数値列になっているデータ

設定 — 処理対象列に 30 問を選び、因子数に 3

出力 — 因子1〜因子3 の列。どの設問がどの因子に効いているかはバイプロットで読みます

2. 回答者を見分けられるようにする

お題 — 因子の値だけでは誰の回答か分からない

入力 — 同上

設定 — 「処理後残す列を選択する」に回答者 ID を選ぶ

出力 — 出力データの左側に回答者 ID が残る

3. 因子の数を決めかねている

お題 — いくつの因子にまとめるべきか決まらない

入力 — 同上

設定 — 因子数を空のまま実行し、バイプロットで矢印のまとまり方を見る

出力 — 対象列と同じ数の因子。まとまりが見えた数を入れて取り直します

関連