- 因子分析
- データの読み込み
まず,csv形式と呼ばれる,個々のデータがコンマで区切られた形式の
データファイルを読み込む.
- メニューの「データ」から,
「データのインポート」→
「テキストファイルまたはクリップボードから」を選ぶ.
- 読み込んだデータに R 用の名前(データセット名)を指定して,
ファイルの形式の詳細を指定する.下の例では,@データセット名が「Seiseki」,
Aファイルの1行目に変数名があることをチェック,Bフィールドの区切り記号が
カンマであること(フィールドとは,データファイルの列のこと),
C小数点の記号がピリオドであること,を指定している.これらを指定してから,
一番下の「OK」ボタンを押す.
- 読み込むデータファイルを指定する.
- 読み込んだデータの中身を確認しよう.
メニューの下にある「データセットの編集」ボタンを押すと,
読み込んだデータが表示され,修正もできる.データを見るだけなら,
「データセットを表示」ボタンでもいいが,そのボタンを押すと
ハングアップする不具合があるみたいだから,押さないように.
読み込んだデータセットは,6つの変数(no と Japanese〜English)を持つ23個のデータで
構成されていることがわかる.
- 相関行列
まず,因子数を決定するために,相関行列,および,その固有値を調べよう.
データセットの1番目の変数 no を除く部分は Seiseki[,2:6] で指定できるが,
その相関行列は cor(Seiseki[,2:6])) とすると求まる.さらに,
その固有値固有ベクトルは eigen(cor(Seiseki[,2:6])) で求められる.
それを下のように,変数 e に入れたら,e$values で固有値が
すべて表示される.
1より大きい固有値は1個であるが,2番目の固有値も3番目以降に比べると
1に近い.また,5科目の成績を説明する因子として,1つでは少なすぎる
と考え,2つの因子を選ぶことにする.
- クラスター分析(非階層的)
つぎに,非階層的なクラスター分析を行う.
- メニューの「統計量」から,
「次元解析」→「因子分析」を選ぶ.
- 分析対象の変数(ここでは Japanese 〜 English の5個) を選び,
因子の回転をするかどうか,因子得点(スコア)をどの方法で計算するか
などを指定して,「OK」ボタンを押す.ここでは,
因子の回転として「バリマックス」法,因子得点(スコア)の
推定法として,「回帰」を選んでいる.
- 因子数を決めて「OK」ボタンを押す.ここでは2因子.
- 出力ウィンドウに分析結果が表示される.
各科目の独自性(uniquenesses),因子負荷量(Loadings)などが
求められている.この結果より,第1因子は理科以外の総合的な
能力,第2因子は理科の能力に関連する潜在的な因子であると
考えられる.他の解釈を求める場合は,回転方法を変えて,
同様の操作をすること.
- 指定した方法で(ここでは回帰),各人の科目別の
因子得点(スコア)が推定され,それをデータセットに
格納されている.確認すると,以下のようである.
- さらに,入力ウィンドウに以下のように入力し,各データの
因子得点の散布図を描いてみる.