1.アパシーデータの永久 SAS ファイル化 |
2. アパシーデータの因子分析 (promax 解) のための SAS プログラム |
3. アパシーデータの promax 解の出力結果とその見方 |
4. アパシーデータのターゲットパタンへの Procrustes 回転のためのプログラム |
5. アパシーデータの Procrustes 回転による出力結果とその見方 |
この節には、つぎの5つの SAS プログラムのダウンロードコーナーを用意して あります:
1. アパシーデータの永久 SAS ファイル化のための SAS プログラムの例 |
2. アパシーデータの因子分析 (promax 解) のためのプログラムの例 |
2. アパシーデータのターゲットパタンへの Procrustes 回転のためのプログラム |
この節では、高橋(2001) が収集した(下山(1995) の用いた)アパシー心理性格尺度20変数、
167名の一般大学生のデータを使って、斜交回転の1つの方法である promax 法による promax 回転
の結果について簡単に説明する。
データは、もともとエクセルで入力したものを、csv 形式
(comma separated value format) で保存し直したものである。以下のプログラムは、csv 形式のデ
ータを SAS のデータ文でコンマを削除し永久 SAS ファイル化するためのものである。ユーザがこの
プログラムを利用するときは、もちろん、ユーザのパソコン環境等により filename 文や libname 文
の中のドライブ名やディレクトリパス、ファイル名等を変更する必要がある。
ここで、infile 文のオプションの1つである dsd を用いると、欠測値をピリオドを用いずブランク
のままに入力してあってもうまく行くこともあるが、すべてピリオドを入力してあるのが望ましい:
*------------------------------------------------------ July 17, 2002 | | sas program--perm_csv.sas-- | | example 1 of sas programs for making a permanent file using | | a set of csv file. | | | | file name: c:\My Documents\sasprog\perm_csv.sas | | | *---------------------------------------------------------------------*; filename data 'c:\My Documents\data\apathykou.csv'; libname sasfile 'c:\My Documents\permfile'; options pagesize=40; title 'Apathy data gathered by Taro Takahashi'; data sasfile.apathy; infile data dsd; input apa1-apa20; run; title 'A permanent file for the apathy data'; proc print data=sasfile.apathy n; run; |
perm_csv.sas |
2)アパシーデータの因子分析 (promax 解) のための SAS プログラム
つぎのプログラムは、上記アパシーデータの因子分析 (promax 解) のための SAS プログ
ラムである。因子数は、先行研究である下山(1995) の結果をもとに、4とした。
*------------------------------------------------------ July 17, 2002 | | sas program--fact-promax.sas-- | | example 1 of sas programs for obtaining a promax solution. | | | | file name: c:\My Documents\sasprog\fact-promax.sas | | | *---------------------------------------------------------------------*; libname sasfile 'c:\My Documents\permfile'; options pagesize=60; title 'A promax solution for the apathy data by T. Takahashi'; proc factor data=sasfile.apathy /* method options */ method=p priors=max n=4 rotate=p; var apa1-apa20; run; |
ここで、factor プロシジャのオプションのうち、method=p は主因子法、priors=max は共通性の 初期値として相関行列の行または列の最大のものの絶対値を充てることを、n=4 は(共通)因子として 4因子を、rotate=p は promax 回転を、それぞれ指示している。
fact-promax.sas |
3) アパシーデータの promax 解の出力結果とその見方
プロマックス回転では、もとの直交因子パターンを 3.2.4 節の (3.70f) 式により変換し、これ をターゲットにしてプロクラステス回転することにより、斜交解を得る方法であるので、SAS では その場合のターゲット行列等を出力する。
|
つぎに、以下のようなプロマックス回転による(斜交)因子パターンが出力される。
Rotation Method: Promax Rotated Factor Pattern (Std Reg Coefs) FACTOR1 FACTOR2 FACTOR3 FACTOR4 APA1 0.47740 -0.05865 -0.01858 -0.08253 APA2 0.76716 0.13116 -0.12095 -0.01540 APA3 0.45565 0.13922 0.18995 0.07851 APA4 0.60480 -0.13816 -0.11118 -0.12229 APA5 0.72228 0.01905 -0.01397 0.10468 APA6 -0.20648 0.69980 -0.15341 0.18522 APA7 0.18910 0.69573 0.03310 -0.07786 APA8 0.17132 0.73414 0.05656 -0.10130 APA9 0.06078 0.50638 0.08615 0.29276 APA10 0.32293 0.55186 -0.11099 0.04323 APA11 0.35963 -0.22941 0.51209 0.04851 APA12 0.20990 0.15261 0.57726 -0.00812 APA13 0.35134 0.18186 0.41087 0.02531 APA14 -0.27680 0.27897 0.45910 -0.05333 APA15 -0.09736 -0.12854 0.68749 0.01528 APA16 0.17658 -0.49103 -0.10848 0.28563 APA17 -0.06442 0.06951 -0.03784 0.57052 APA18 0.23502 0.03438 0.00078 0.22658 APA19 0.01080 -0.09638 -0.07388 0.60827 APA20 -0.13634 -0.04739 0.21419 0.54665 |
斜交解では一般に、斜交因子間相関(行列)、最終的な斜交因子パターン、及び斜交因子構造 の3点セットが必要であるが、その時点で付随的に斜交参考軸 (oblique reference axes) や同参 考構造等が計算される。詳細は、Harman (1967) や柳井・繁桝・前川・市川 (1990) を参照のこと。
つぎに、プロマックス解による(斜交)因子構造が以下のように出力される:
Factor Structure (Correlations) FACTOR1 FACTOR2 FACTOR3 FACTOR4 APA1 0.40176 0.17224 0.18838 0.08280 APA2 0.77121 0.51603 0.31609 0.30645 APA3 0.66404 0.48244 0.49376 0.36620 APA4 0.42047 0.12019 0.12580 0.03908 APA5 0.76772 0.45633 0.39827 0.39802 APA6 0.17906 0.60331 0.01262 0.31329 APA7 0.56384 0.78354 0.32949 0.26065 APA8 0.57032 0.81090 0.34917 0.25068 APA9 0.50636 0.67407 0.36087 0.52583 APA10 0.59084 0.71297 0.24403 0.34235 APA11 0.51790 0.15104 0.64083 0.25482 APA12 0.59287 0.44939 0.73262 0.29545 APA13 0.67735 0.51726 0.65869 0.34920 APA14 0.09700 0.24998 0.38784 0.06704 APA15 0.19537 0.03988 0.60044 0.12429 APA16 -0.03954 -0.32273 -0.09063 0.14724 APA17 0.18406 0.22910 0.11229 0.55918 APA18 0.34574 0.24839 0.19841 0.33380 APA19 0.16297 0.10759 0.07374 0.55661 APA20 0.16861 0.14298 0.28311 0.53532 |
最後に、SAS では斜交因子の因子寄与と最終的な共通性の推定値を以下のように出力する。 ここで、1,2注意が必要である。
まず、各因子の因子寄与については、斜交解では直交解と異なり因子間に相関があるので、 各因子の因子寄与は直交解のように単純な因子ごとの因子負荷量の2乗和にはならない。そこで、 斜交解の場合、因子寄与も単純な2乗和である直接的全寄与(total direct contributions) と 同時全寄与 (total joint contributions) の2種類を定義できる (Harman, 1967, p.284)。SAS では、それらのうちの前者を出力している
2つ目として、斜交解における各変数(尺度)の共通性についても、斜交解の場合、直交解の 場合のような各変数ごとの因子負荷量の2乗和にはならない。因子間の相関がその理由である。 以下の出力を見ると、SAS では共通性の方は単純な2乗和にはなっていないことがわかる:
Rotation Method: Promax Variance explained by each factor ignoring other factors FACTOR1 FACTOR2 FACTOR3 FACTOR4 4.580109 4.156303 3.012049 2.353718 Final Communality Estimates: Total = 8.659331 APA1 APA2 APA3 APA4 APA5 APA6 APA7 0.171367 0.616372 0.492276 0.218933 0.599296 0.441312 0.642360 APA8 APA9 APA10 APA11 APA12 APA13 APA14 0.687372 0.557143 0.571972 0.492126 0.613537 0.611524 0.217371 APA15 APA16 APA17 APA18 APA19 APA20 0.390546 0.203376 0.318844 0.165587 0.324511 0.323506 |
4) アパシーデータのターゲットパタンへの Procrustes 回転のためのプログラム
ここでは、これまでの promax 解とは異なり、アパシーの因子パターンとして仮設的なもの (ターゲット因子パタン)を考え、実際のデータから得られた因子パターンをこれに出来るだけ 近づけてみるとどうなるかを検討してみる。このためには、プロクラステス回転 (Procrustes rotation) という手法が知られている (例えば、Hurley & Cattell, 1962; Schonemann, 1966)。
このデータにも、下山 (1995) にならい、4因子の斜交解に対して以下のような単純な因子 パターンを仮定することにより仮設的なターゲット因子パターンを構成し、実際のデータがどの 程度このパターンに近いといえるかを検討した。
*------------------------------------------------------ July 18, 2002 | | sas program--factproc-m.sas-- | | example 1 of sas programs for executing a Procrustes rotation | | a set of csv file. | | | | file name: c:\My Documents\sasprog\perm_csv.sas | | | *---------------------------------------------------------------------*; libname sasfile 'c:\My Documents\permfile'; options pagesize=60; data work; input apa1-apa20; cards; 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 ; run; title 'A Procrustes solution for the apathy data'; proc factor data=sasfile.apathy target=work /* method options */ method=p priors=max n=4 rotate=procrustes; var apa1-apa20; run; |
うえのプログラムで、ターゲットパターンは cards 文の直後に指定してあるものである。 すなわち、アパシーの20尺度に対する4因子ごとの仮設的な因子負荷量を、この場合0と1で 指定している。一般的には0か1である必要はない。Procrustes 回転には直交回転と斜交回転が あるが、SAS では斜交回転が用意されている。
factproc-m.sas |
5) アパシーデータの Procrustes 回転による出力結果とその見方
Rotation Method: Procrustes Target Matrix for Procrustean Transformation FACTOR1 FACTOR2 FACTOR3 FACTOR4 APA1 1.00000 0.00000 0.00000 0.00000 APA2 1.00000 0.00000 0.00000 0.00000 APA3 1.00000 0.00000 0.00000 0.00000 APA4 1.00000 0.00000 0.00000 0.00000 APA5 1.00000 0.00000 0.00000 0.00000 APA6 0.00000 1.00000 0.00000 0.00000 APA7 0.00000 1.00000 0.00000 0.00000 APA8 0.00000 1.00000 0.00000 0.00000 APA9 0.00000 1.00000 0.00000 0.00000 APA10 0.00000 1.00000 0.00000 0.00000 APA11 0.00000 0.00000 1.00000 0.00000 APA12 0.00000 0.00000 1.00000 0.00000 APA13 0.00000 0.00000 1.00000 0.00000 APA14 0.00000 0.00000 1.00000 0.00000 APA15 0.00000 0.00000 1.00000 0.00000 APA16 0.00000 0.00000 0.00000 1.00000 APA17 0.00000 0.00000 0.00000 1.00000 APA18 0.00000 0.00000 0.00000 1.00000 APA19 0.00000 0.00000 0.00000 1.00000 APA20 0.00000 0.00000 0.00000 1.00000 |
上の結果はプログラムのところであらかじめ入力したものを出力しているに過ぎない。
Inter-factor Correlations FACTOR1 FACTOR2 FACTOR3 FACTOR4 FACTOR1 1.00000 0.53547 0.55979 0.22382 FACTOR2 0.53547 1.00000 0.47392 0.27902 FACTOR3 0.55979 0.47392 1.00000 0.30811 FACTOR4 0.22382 0.27902 0.30811 1.00000 |
Rotation Method: Procrustes Rotated Factor Pattern (Std Reg Coefs) FACTOR1 FACTOR2 FACTOR3 FACTOR4 APA1 0.42874 -0.03976 0.02104 -0.03828 APA2 0.68471 0.21016 -0.06690 0.02316 APA3 0.37532 0.17638 0.24992 0.08020 APA4 0.55607 -0.11042 -0.07136 -0.05490 APA5 0.63945 0.10293 0.04306 0.14153 APA6 -0.20838 0.77789 -0.18138 0.08044 APA7 0.12462 0.72252 0.06658 -0.14253 APA8 0.10437 0.75315 0.09243 -0.17056 APA9 0.01381 0.59103 0.10137 0.21303 APA10 0.26561 0.62768 -0.08799 -0.00080 APA11 0.27811 -0.26442 0.59456 0.08029 APA12 0.11713 0.10313 0.66227 -0.02847 APA13 0.25783 0.17329 0.48885 0.01290 APA14 -0.30865 0.20123 0.49307 -0.11308 APA15 -0.15053 -0.22443 0.75345 0.00327 APA16 0.19399 -0.42252 -0.12168 0.33653 APA17 -0.06097 0.20137 -0.06197 0.51695 APA18 0.20460 0.10589 0.01514 0.22082 APA19 0.01869 0.04652 -0.09949 0.57724 APA20 -0.14403 0.03642 0.21081 0.49672 |
Factor Structure (Correlations) FACTOR1 FACTOR2 FACTOR3 FACTOR4 APA1 0.41066 0.18911 0.23041 0.05307 APA2 0.76498 0.55157 0.42313 0.21444 APA3 0.62762 0.51817 0.56832 0.29042 APA4 0.44471 0.13821 0.17068 0.01676 APA5 0.75035 0.50524 0.49341 0.32664 APA6 0.12463 0.60279 0.09541 0.19497 APA7 0.51688 0.78104 0.43484 0.10748 APA8 0.52124 0.80526 0.45524 0.09143 APA9 0.43472 0.70590 0.45484 0.41226 APA10 0.55228 0.72798 0.35791 0.20667 APA11 0.48731 0.18867 0.64966 0.25194 APA12 0.53671 0.47177 0.76794 0.23057 APA13 0.62716 0.54662 0.71928 0.26958 APA14 0.04980 0.23807 0.38081 0.02591 APA15 0.15180 0.05295 0.56384 0.13910 APA16 -0.02505 -0.28241 -0.10964 0.22457 APA17 0.12787 0.28360 0.15861 0.54040 APA18 0.31920 0.28424 0.24789 0.30083 APA19 0.11711 0.17044 0.11088 0.56375 APA20 0.10465 0.19780 0.30049 0.53960 |
うえの結果からは、、因子パターンではこのデータの構造はターゲットに近いかなり単純な 構造になっているが、因子構造で見ると必ずしもそうでないことが明らかである。因子の解釈 という観点に立つと、常識的には、因子パターン(すなわち、因子の係数)より因子構造(すな わち、因子と個々の変数との相関の情報)の方が合理的とも見れなくないので、この結果は、 少なくともこのデータの場合、因子パターンが単純構造と見れるというだけでは因子の解釈が すっきりしたと結論付けるのは早計ではないか。
ここでは、プロクラステス回転後の因子寄与が出力される。ただし、プロマックス回転のところで も述べたように、斜交回転解では因子間相関があるので、因子寄与にも2種類あることに注意された い。 すなわち斜交因子では、因子寄与も単純な2乗和である直接的全寄与(total direct contributions) と、同時全寄与 (total joint contributions) の2種類を定義できる (Harman, 1967, p.284)。SAS では、それらのうちの前者を出力している。
Rotation Method: Procrustes Variance explained by each factor ignoring other factors FACTOR1 FACTOR2 FACTOR3 FACTOR4 4.044838 4.458519 3.761401 1.761994 |
プロマックス回転のところでも述べたように、斜交解における各変数(尺度)の 共通性についても、斜交解の場合、直交解の場合のような各変数ごとの因子負荷量の2乗和に はならない。因子間の相関がその理由である。以下の出力を見ると、SAS では共通性の方は単 純な2乗和にはなっていないことがわかる:
Final Communality Estimates: Total = 8.659331 APA1 APA2 APA3 APA4 APA5 APA6 APA7 0.171367 0.616372 0.492276 0.218933 0.599296 0.441312 0.642360 APA8 APA9 APA10 APA11 APA12 APA13 APA14 0.687372 0.557143 0.571972 0.492126 0.613537 0.611524 0.217371 APA15 APA16 APA17 APA18 APA19 APA20 0.390546 0.203376 0.318844 0.165587 0.324511 0.323506 |