日本心理学会大会2000ワークショップ
心理学の基礎(6) 因子分析の基本問題


最終更新日:
counter: (2000/11/11からの累積)
日本心理学会第64回大会ワークショップ
心理学の基礎(6) 因子分析の基本問題(いつまでリンクが有効でしょうか?)
2000年11月6日 於 京都国際会館

話題提供  堀 啓造(香川大学) powerpoint
指定討論者 狩野 裕(大阪大学) powerpoint(狩野さんのページにリンク)
司会    服部 環(筑波大学)

狩野さんのfpr でのコメント[fpr 1849]

なお,不適解については狩野さんの別のワークショップ参照 powerpoint

堀 啓造話題提供(一部略)
(因子分析がどんなものか知るために乱数データからモデルを作成し,結果がどうなるか見てみることをお薦めします)
主成分分析と因子分析の違い
因子分析の直交解と斜交解
高次因子,階層因子
斜交の図
因子抽出法
 不適解
因子数の決定法
 MAP(Velicer),PA(parallel analysis)(Horn)
 過小因子数と過大因子数
被験者・変数の数
モデル

狩野 裕さん指定討論
主成分分析 vs. 因子分析
 理論的観点...Which to use
  記述的方法・統計モデル
  適用する状況が異なる
 実際的観点...How different
  共通性の大きさ
  尺度不変性,変数に関する不変性
 少し高度な理論的観点
  適合度:反証可能性
  変数の数が大きいと両者の分析結果は一致
斜交解 vs. 直交解
 近年,斜交解の報告が増加
  因子が無相関であることはまずない
  SEMの影響
 斜交か直交かはデータから決めるものではない
 研究者自身が決定すべきもの
最尤法 vs. 反復主因子法
 どのように対応する?
 推定方式の2つの側面
  循環法 vs. ニュートン法
  最小2乗規準 vs. 尤度規準
学生・院生への推奨方法
適合度の見方

堀と狩野の考え方は大きくは違っていない。仔細についての違いはいくつもある。また,堀は具体例で話を進めている点について狩野できちんと専門用語をあてている場合(不変性)もある。

発表資料
(1)乱数データ
(2)直交モデル slide 4-15
(3)斜交モデル
(4)高次因子分析
(5)因子の範囲を絞り込む slide 54-60
(6)モデル wisc-r 6歳児

使用したSPSSマクロ・シンタックス・スクリプト

質問への回答(一部)
(1)いくつくらいの変数の数で因子分析と主成分分析が同じと言えますか?
(2)斜交解と直交解,実際にはどちらを使うか?
(3)回転前の第1因子を一般因子と見なし,これを除いて回転解を求めるのはどうか?
(4)SPSSの斜交回転のプロットはおかしい。または準拠構造行列の出力が必要。
(5)斜交解に使っている人工データは作り方を変えれば(例えば,重み係数を個々の変数ごとに変える),2因子ではなく3因子になるのでは?

参考文献


発表資料

(1)乱数データ

SPSSデータfacdata.sav excel ファイルfactdata.xls
F1〜F20, E1〜E20

この乱数データから変数データを作成


(2)直交モデル slide 4-15

作成した変数データ v1-v10 excelファイル simple10.xls

上の乱数データから変数を作成し,因子分析・主成分分析をするSPSS シンタックス simple10.sps

(3)斜交モデル

slide 17-39において使用した変数 相関行列を使用したほうが省スペースであろう
作成した変数データ v1-v20 excel ファイル oblique20.xls
slide 17-26, 34 では v1-v5, v16-v20 を使用

上の乱数データから変数を作成し,因子分析・主成分分析をするSPSS シンタックス obliquemodel.sps

(4)高次因子分析

spss シンタックス koji.SPS

高次,階層因子モデルについては,
Yung, Y.-F., Thissen, D., and McLeod, L. D. (1999).On the relationship between the higher-order factor model and the hierarchical factor model. Psychometrika. 64(2), 113-128.

Statistica の行っている階層因子分析については次の本。プログラムつき。
Wherry, R. J. (1984). Contributions to correlational analysis. New York: Academic Press.

(5)因子の範囲を絞り込む slide 54-60


柳井・繁桝・前川・市川(1990).『因子分析ーその理論と方法』朝倉書店
の性格検査 男女各100名合計200名 13性格尺度のデータ
相関行列とspss シンタックス seikaku.sps raw data が鈴木督久さん@日経リサーチ@早稲田大学のところにある。
http://www.littera.waseda.ac.jp/faculty/stok/menu03/yanai.txt
同じく鈴木督久さんのところにある
http://www.littera.waseda.ac.jp/faculty/stok/menu03/TandW.txt はスライド41〜43で使ったデータである。

(6)モデル wisc-r 6歳児

spss シンタックス 6wiscr.sps

このデータは
南風原朝和(1992). 知能検査の因子構造をさぐる−因子分析 in 渡部洋編著『心理・教育のための多変量解析法入門』福村出版
のものです。

本の中では反復をしない「主因子法」を行っています。ml や 反復主因子法を実行すると3因子解において共通性が1以上になります。


因子行列
a 3 個の因子の抽出が試みられました。反復 250 で変数の共通性が 1.0 を超えました。抽出が終了しました。

一方, uls では警告はでますが求めます。

共通性
  初期因子抽出後
知識.284.347
類似.393.441
算数.365.999
単語.421.591
理解.397.530
数唱.283.253
絵画完成.270.231
絵画配列.225.177
積木模様.362.467
組み合わ.309.264
符号.214.222
迷路.271.356
因子抽出法: 重みなし最小二乗法
a 1.0 より大きい 1 つまたは複数の共通性推定値が反復間に発生しました。結果の解を解釈する時は注意してください。


なお,このデータはfpr(1996年 でも議論されています。それに続いて因子分析についても

http://www.nuis.ac.jp/~mat/fpr/fpr1996/0071.html 堀 啓造 問題
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0072.html 鈴木督久さん@日経リサーチ SASによる解析と答え
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0074.html 堀 啓造 SPSSの既定値
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0077.html 南風原朝和さん@東大 処理に関する答え
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0083.html 豊田秀樹さん@早稲田大学(現) 反復しない主因子法は博物館へ
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0086.html 南風原さん豊田さんへの答え
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0111.html 服部さん@筑波大学(現)の他の知能検査の例
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0112.html 狩野さん@大阪大学(現)の再分析 不適解のタイプ分け
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0113.html 豊田さん 不適解
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0114.html 狩野さん 不適解
http://www.nuis.ac.jp/~mat/fpr/fpr1996/0127.html 服部さん 不適解

今回の話題はこのあたりで議論されたこともあって,議論してみました。
この他にも関係発言は多くあります。

使用したSPSSマクロ・シンタックス・スクリプト
互いに独立な正規乱数生成マクロ
因子分析最尤法結果にRMSEAなど適合度指標をプラス script
探索的因子分析の必要サンプル数求める syntax(参考)

固有値のジャックナイフ,MAP, PA, および斜交解のプロットはexcel の vba で組んでいる。

斜交解のプロットについては,構造行列と因子間の角度から求める。

堀 啓造(1999).因子分析の斜交解因子構造負荷量をプロットする 日本心理学会第63回大会発表論文集(中京大学), p197 doc ファイルのlzh 圧縮(1.4M)
この論文の解の直後に,「因子構造空間上の変数V1からFa,Fbでできる平面へ垂線をおろし,平面との交点をVとする。」「明らかにFa軸とVAは垂直,Fb軸とVBは垂直。」という記述が必要でした。
プロットするプログラムはexcel vba を使って書いてます。

質問への回答(一部)

(1)いくつくらいの変数の数で因子分析と主成分分析が同じと言えますか?
私のスライド 7 を参考にしてください。
主成分分析は最大で固有値1.0分大きくなります。例えば共通性の平均値が 0.1 であれば固有値 0.9 分を大きくなります。これが 負荷量で 0.05 の影響する場合にはほぼ同じということにするならば,
負荷量の平均は sqrt(0.1)=0.316227766,
そのときの許容負荷量は 0.316227766+0.05=0.366227766
共通性に直すと    0.366227766^2=0.1341227766
もとからある共通性を引いて 0.1341227766-0.1=0.0341227766
これから変数の数を求めると 0.9/0.0341227766=26.37534485
27変数です。
その因子の共通性が高ければもっと少ない変数数で影響はほとんどなくなります。
F-Basic で書けば次のようにして求めることができます。
open "test.dat" for create as #1
for I=0.1 to 0.91 step 0.1
LOADING=sqr(I)+0.05
COMMU=LOADING^2
N=(1-I)/(COMMU-I)
print #1,using "#.# #.### ###.#" ;I,sqr(i), N
print using "#.# #.### ###.#" ;I,sqr(I), N
next
stop

因子分析と主成分分析が同じ負荷量と見なせる(その因子に関連する)変数の数(目安)
変数数変数数
平均
共通性
対応する
負荷量
負荷量
0.05許容
負荷量
0.01許容
0.1 0.316 26.4140.1
0.2 0.447 16.9 88.5
0.3 0.548 12.2 63.3
0.4 0.632 9.1 47.1
0.5 0.707 6.8 35.1
0.6 0.775 5.0 25.7
0.7 0.837 3.5 17.8
0.8 0.894 2.2 11.1
0.9 0.949 1.0 5.2


(2)斜交解と直交解,実際にはどちらを使うか?
下位尺度を作っているなら,斜交解であるべきだ。つまり,一般因子があることを前提として下位尺度を作っているから。

そのほかの場合でも斜交解が一般解なのだからまず斜交解を求めるべきである。そののち直交でもいいか判断をすればよい。何度まで直交と考えるかはCEFA のように角度が有意かどうか求める考えもあれば,Nunnally のようにかなり大きな角度までは直交とみなすべきという考えもある。

(3)回転前の第1因子を一般因子と見なし,これを除いて回転解を求めるのはどうか?
その方法は知能の研究者の Jensen らが簡易のg を求める手法として使っている。これはg を過大評価することになる。堀のスライド30,37のデータ oblique20.xlsを使って分析する。一般因子は sqrt(0.3)=0.548になる。因子分析の回転前の解を求めてみよ。回転前の第1因子はかなり一般因子より大きくなる。

因子行列
因子
1.0002.0003.0004.000
V1.726-.590-.145-.066
V2.726-.590-.145-.066
V3.726-.590-.145-.066
V4.726-.590-.145-.066
V5.726-.590-.145-.066
V6.663.421-.414-.106
V7.663.421-.414-.106
V8.663.421-.414-.106
V9.663.421-.414-.106
V10.663.421-.414-.106
V11.611.155.481-.268
V12.611.155.481-.268
V13.611.155.481-.268
V14.611.155.481-.268
V15.611.155.481-.268
V16.566.095.152.498
V17.566.095.152.498
V18.566.095.152.498
V19.566.095.152.498
V20.566.095.152.498
因子抽出法: 主因子法
a4 個の因子が抽出されました。4 回の反復が必要です。

因子行列=初期解はml と 主因子法・uls とでは大きく違っているが,直接 oblimin 回転の解は同じである。

(4)SPSSの斜交回転のプロットはおかしい。または準拠構造行列の出力が必要。
 にあるように斜交解を斜交のままプロットするプログラムを作ってます。今回の発表でもそれを使ってます。説明はしませんでしたが,x軸とピンク色の斜めの線が2つの軸を表しています。準拠構造行列なしでもプロットできます。

(5)斜交解の2因子に使っている人工データは作り方を変えれば(例えば,重み係数を個々の変数ごとに変える),2因子ではなく3因子になるのでは?
 なりません。いくつか試して見ました。もしなるような重みの付け方を見つけたら教えてください。その場合,一般因子が存在するように重みをつけてくださいね。

参考文献

全般的な参考文献
Cudeck, R. (2000). Exploratory factor analysis. In H.R.A. Tinsley and S.D. Brown (eds.) Handbook of applied multivariate statistics and mathematical modeling. Academic Press.

Gorsuch,R.L.(1983) Factor analysis(2nd, ed.) Lawrence Erlbaum,

Gorsuch, R. L. (1997). Exploratory factor analysis: Its role in item analysis. Journal of Personality Assessment, 68(3), 532-560.
比較的新しいreview である。今回使用しようと思ったが,見送った。

非反復因子分析文献
こちらにexce vba のプログラムがあります。

Kano, Y. (1990). Noniterative estimation and the choice of the number of factors in exploratory factor anlysis. Psychometrika, 55, 277-291.

Cudeck, R. (1991). Noniterative factor analysis estimators, with algorithms for subset and instrumental variable selection. Journal of Educational Statistics, 16, 35-52.
Cudeck のプログラムはインターネットで公表されている 探索的因子分析のプログラム CEFA の中にある。

paralle analysis 文献
こちらに説明と文献をもっとあげている。

SPSS、SAS、MATLABの行列言語によるプログラムが次のところにある。
SPSS, SAS, and MATLAB Programs for Determining the Number of Components Using Parallel Analysis and Velicer's MAP Test by Brian P. O'Connor

Horn, J.L.(1965). A rationale and test for the number of factors in factor analysis. Psychometrika, 30, 179-185.

Montanelli,R.G.,Jr.,& Humphreys,L.G.(1976).Latent roots of random data correlation matrices with squared multiple correltaions on the diagonal. Psychometrika, 41, 341-348. SMCの場合

Allen,S. and Hubbard,R.(1986). Regression equations of the latent root of randam data correlation matrices with unities on the diagnal. Multivariate Behavioral Research, 21, 393-398 主成分分析の場合

Buja,A. and Eyuboglu,N. (1992). Remarks on parallel analysis. Multivariate Behavioral Research, 27, 509-540. 主成分分析とSMCのときの比較がある

そのほかPsycLit で引くと1998 年まで文献がある。

サンプル数が大きくなると,主成分分析の固有値1にどんどん近づく。サンプル数が2000以上くらいなら固有値1以上の基準でよい。

MAP (Velicer)
SPSS、SAS、MATLABの行列言語によるプログラムが次のところにある。
SPSS, SAS, and MATLAB Programs for Determining the Number of Components Using Parallel Analysis and Velicer's MAP Test by Brian P. O'Connor


Velicer, W.F. 1976 Determining the number of components from the matrix of partial correlations. Psychometrika, 41, 321 - 327.


RMSEA,AIC,BIC*,BIC 以下のところに文献等を書いてます
SPSS ときど記(10) 2000/4/23 因子分析 最尤法の適合度指標
SPSS ときど記(12) 2000/4/26 因子分析 RMSEA の区間推定
因子分析最尤法のχ2値などからRMSEA 90%信頼区間など適合度指標を求める syntax
因子分析最尤法結果にRMSEAなど適合度指標をプラス script

斜交回転の直接oblimin と promax 法
次のところを参照してください。 SPSS ときど記(13) 2000/ 4/27 因子分析 斜交回転 kappa, delta

変数数・サンプル数
Stevens,J.(1996). Applied multivariate statistics for the social sciences (3rd ed.). LEA.

Guadagnoli,E.,& Velicer,W.F.(1988). Stability of component patterns: A simulation study.Psychological Bulletin, 103, 265-275.

Velicer,W.F., & Fava,J.L.(1998). Effects of variable and subject sampling on factor pattern recovery. Psychological Methods, 3(2), 231-235.

これらを全般を見渡すのにいいモデル化している文献が次のもの
Little,T.D., Lindenberger,U., and Nesselroade,J.R.(1999). On selecting indicators for multivariate measurement and modeling with latent variables: when "good" indicators are bad and "bad" indicators are good. Psychological Methods, 4(2), 192-211.

インターネットの探索的因子分析リンク集も参考にしてください。

堀ホームページ   e-mail hori@ec.kagawa-u.ac.jp