2018年11月 1日 木曜日 15時34分03秒 23 : shintyou*taijyuu. A=1, B=2, ... 200 + | | | | A A A | AA B A A A 180 + A BACEA G B | AB BBCGCBDCH A A AD A A | ABBCBDIJCCADBCB A A shintyou | BBBGEEHFDEBAAB A A A | H AHEKCDBBAF AA A | BA EF A BBAA 160 + B DCCDACAAA | BAACDCDA A A | A CABC A A | BA A | A BA | 140 + ---+------------+------------+------------+------------+-- 20 40 60 80 100 taijyuu
前述の主成分分析の場合は、
データの散らばり方(分散)を捉えてデータ特性を把握する手法であった。
一方、因子分析は、変数間に(潜在的な)構造を持ち込んで関係を探る手法である
(少し理解しにくいかもしれないが)。
この手法は心理学の分野で広く利用されている。
100種類の食品の性、年齢毎の嗜好度調査の結果 : データ :
food.dat
/* Lesson 05-5 */ /* File Name = DSles0605.sas 11/12/18 */ options linesize=72 pagesize=20; options nocenter linesize=78 pagesize=30; proc printto log = 'Kougi/DSles0605_log.txt' print = 'Kougi/DSles0605_Results.txt' new; ods listing gpath='Kougi/SAS_ODS99'; data food; infile 'Kougi/food.dat'; : ファイルの読み込み input X01-X10; : 変量リスト、連続的に label X01='M(-15)' : 各変量に解りやすい名前を付ける X02='M(16-20)' : M : 男性 X03='M(21-30)' : F : 女性 X04='M(31-40)' : ()内 : 年齢 X05='M(41-)' : X06='F(-15)' : X07='F(16-20)' : X08='F(21-30)' : X09='F(31-40)' : X10='F(41-)'; : : proc print data=food(obs=10); : データの表示 run; : proc factor data=food; : オプションを付けないと主成分分析 var X01-X10; : 解析に使う変量リスト run; :
2018年11月10日 土曜日 07時56分46秒 176 Obs X01 X02 X03 X04 X05 X06 X07 X08 X09 X10 1 7.69 7.31 7.47 7.76 7.87 7.51 7.24 7.70 7.91 7.95 2 6.59 5.56 6.21 6.04 5.81 6.64 6.11 6.53 6.44 6.64 3 4.55 4.18 4.36 4.25 4.53 4.60 3.66 4.04 3.68 4.43 4 6.78 6.11 6.30 5.98 5.56 6.37 6.29 5.43 5.32 5.28 5 6.47 6.24 6.02 5.42 5.88 6.00 5.60 4.60 5.40 5.95 6 6.96 6.81 6.91 6.48 6.23 7.09 7.27 7.13 6.86 7.36 7 6.57 5.70 5.89 5.16 5.30 6.07 5.56 4.50 4.92 5.33 8 7.32 6.95 6.02 4.98 4.88 6.82 6.40 5.53 5.61 5.33 9 6.51 6.15 5.51 4.68 4.16 5.17 4.81 4.70 4.86 3.82 10 6.86 6.05 5.85 6.14 6.75 6.71 5.39 5.42 6.03 6.59 2018年11月10日 土曜日 07時56分46秒 177 FACTOR プロシジャ 入力データタイプ Raw Data 読み込んだレコード 100 使用されたレコード 100 有意性検定のための 100 2018年11月10日 土曜日 07時56分46秒 178 FACTOR プロシジャ 初期因子抽出の方法 : 主成分解 事前共通性の推定値 : ONE 相関行列の固有値: 合計 = 10 平均 = 1 固有値 差 比率 累積 1 6.82795512 5.06608201 0.6828 0.6828 2 1.76187311 1.00742187 0.1762 0.8590 3 0.75445124 0.49207487 0.0754 0.9344 4 0.26237637 0.14082435 0.0262 0.9607 5 0.12155202 0.02358655 0.0122 0.9728 6 0.09796547 0.02586580 0.0098 0.9826 7 0.07209967 0.02801926 0.0072 0.9898 8 0.04408041 0.00832792 0.0044 0.9942 9 0.03575249 0.01385842 0.0036 0.9978 10 0.02189408 0.0022 1.0000 2 因子が MINEIGEN 基準により示されます。 因子パターン Factor1 Factor2 X01 M(-15) 0.74741 -0.59244 X02 M(16-20) 0.86579 -0.31836 X03 M(21-30) 0.84491 0.22079 X04 M(31-40) 0.78216 0.47602 X05 M(41-) 0.68129 0.67325 X06 F(-15) 0.80647 -0.54140 X07 F(16-20) 0.89959 -0.33542 X08 F(21-30) 0.90901 -0.04289 X09 F(31-40) 0.90316 0.21817 X10 F(41-) 0.79262 0.35477 因子の分散 Factor1 Factor2 6.8279551 1.7618731 最終的な共通性の推定値 : 合計 = 8.589828 X01 X02 X03 X04 X05 0.90961791 0.85094991 0.76262367 0.83837129 0.91741340 X06 X07 X08 X09 X10 0.94352040 0.92177476 0.82814690 0.86329813 0.75411185
/* Lesson 05-6 */ /* File Name = DSles0606.sas 11/12/18 */ options linesize=72 pagesize=20; options nocenter linesize=78 pagesize=30; proc printto log = 'Kougi/DSles0606_log.txt' print = 'Kougi/DSles0606_Results.txt' new; ods listing gpath='Kougi/SAS_ODS99'; data food; infile 'Kougi/food.dat'; input X01-X10; label X01='M(-15)' X02='M(16-20)' X03='M(21-30)' X04='M(31-40)' X05='M(41-)' X06='F(-15)' X07='F(16-20)' X08='F(21-30)' X09='F(31-40)' X10='F(41-)'; proc print data=food(obs=10); run; : proc factor data=food nfactor=3 out=fscore; : 因子数3、出力の保存 var X01-X10; : proc print data=fscore; : run; : proc plot data=fscore; : plot factor1*factor2/vref=0.0 href=0.0; : 第1因子 x 第2因子、軸 plot factor2*factor3/vref=0.0 href=0.0; : 第2因子 x 第3因子、軸 run; :
2018年11月10日 土曜日 10時19分47秒 31 FACTOR プロシジャ 入力データタイプ Raw Data 読み込んだレコード 100 使用されたレコード 100 有意性検定のための 100 2018年11月10日 土曜日 10時19分47秒 32 FACTOR プロシジャ 初期因子抽出の方法 : 主成分解 事前共通性の推定値 : ONE 相関行列の固有値: 合計 = 10 平均 = 1 固有値 差 比率 累積 1 6.82795512 5.06608201 0.6828 0.6828 2 1.76187311 1.00742187 0.1762 0.8590 3 0.75445124 0.49207487 0.0754 0.9344 4 0.26237637 0.14082435 0.0262 0.9607 5 0.12155202 0.02358655 0.0122 0.9728 6 0.09796547 0.02586580 0.0098 0.9826 7 0.07209967 0.02801926 0.0072 0.9898 8 0.04408041 0.00832792 0.0044 0.9942 9 0.03575249 0.01385842 0.0036 0.9978 10 0.02189408 0.0022 1.0000 3 因子が NFACTOR 基準により示されます。 因子パターン Factor1 Factor2 Factor3 X01 M(-15) 0.74741 -0.59244 0.16808 X02 M(16-20) 0.86579 -0.31836 0.29190 X03 M(21-30) 0.84491 0.22079 0.38417 X04 M(31-40) 0.78216 0.47602 0.32604 X05 M(41-) 0.68129 0.67325 0.11067 X06 F(-15) 0.80647 -0.54140 -0.07270 X07 F(16-20) 0.89959 -0.33542 -0.14888 X08 F(21-30) 0.90901 -0.04289 -0.25110 X09 F(31-40) 0.90316 0.21817 -0.27989 X10 F(41-) 0.79262 0.35477 -0.45389 因子の分散 Factor1 Factor2 Factor3 6.8279551 1.7618731 0.7544512 最終的な共通性の推定値 : 合計 = 9.344279 X01 X02 X03 X04 X05 0.93786990 0.93615660 0.91021020 0.94467297 0.92966229 X06 X07 X08 X09 X10 0.94880526 0.94393897 0.89119742 0.94163724 0.96012863 回帰による因子スコア係数の推定 変数群と各因子の重相関係数の 2 乗 Factor1 Factor2 Factor3 1.0000000 1.0000000 1.0000000 標準化スコア係数 Factor1 Factor2 Factor3 X01 M(-15) 0.10946 -0.33626 0.22279 X02 M(16-20) 0.12680 -0.18069 0.38691 X03 M(21-30) 0.12374 0.12531 0.50920 X04 M(31-40) 0.11455 0.27018 0.43215 X05 M(41-) 0.09978 0.38212 0.14670 X06 F(-15) 0.11811 -0.30729 -0.09636 X07 F(16-20) 0.13175 -0.19038 -0.19733 X08 F(21-30) 0.13313 -0.02434 -0.33282 X09 F(31-40) 0.13227 0.12383 -0.37099 X10 F(41-) 0.11609 0.20136 -0.60162 2018年11月10日 土曜日 10時19分47秒 37 Obs Factor1 Factor2 Factor3 1 2.25291 1.08640 -0.08844 2 0.63467 0.10311 -1.03729 3 -1.70123 -0.26136 -0.63515 4 0.27607 -0.47626 0.63732 5 0.05870 -0.13835 0.24975 6 1.39807 0.07464 -0.73569 7 -0.25220 -0.59513 0.30280 8 0.29102 -1.48354 0.07715 9 -0.75271 -1.29557 0.76837 10 0.51913 0.38987 -0.20348 11 0.67476 0.11659 0.27005 12 0.27701 0.10962 0.57308 13 -0.46265 0.26118 -0.61307 14 0.54447 -0.57035 0.82553 15 -0.81584 -1.12638 1.02178 16 -0.08734 -1.60852 -0.07858 17 -0.85600 -0.70655 -0.56938 18 0.29910 -0.54190 -0.19285 19 0.64620 -1.36604 -0.00671 20 1.15931 1.59311 0.30809 21 0.34115 0.78412 -0.73851 22 -1.03516 -0.48533 0.34267 23 -1.22772 -0.16432 0.30277 24 0.94436 0.53398 0.62397 25 0.71842 0.49797 1.59663 << 略 >> 2018年11月10日 土曜日 10時19分47秒 41 : Factor1*Factor2. A=1, B=2, ... Factor1 | | 4 + | | | | | | | A 2 + A |A A | A A A|A AA | A A A A A A A A A A AA | A AA AA A A ACC A |BAA AA A A 0 +-------------------A-----------A------A-B-A---B--A-AAA--AA--A--A--A-- | A A A A A A A A| A A | A A A A A A A | AA AAD A A A | A | AA A A -2 + A A | A A | | A | | | | -4 + | | | --+------------+------------+------------+------------+------------+-- -3 -2 -1 0 1 2 Factor2 2018年11月10日 土曜日 10時19分47秒 42 : Factor2*Factor3. A=1, B=2, ... 2 + | A A | A A A | A | A | AAA A A | A AA B AAA A| A | A AA B A AA| A A A | AB A A AA A | A A A AA A 0 +----------A-A--B-A-----+-AEA-A-------------A------------------------- | A A B A| A A A A | AA AA| AA AAA Factor2 | A A A AA A | A BAA A A | AA A A| A -2 + AA | | | | | A | | | | | | -4 + | --+----------+----------+----------+----------+----------+----------+- -2 -1 0 1 2 3 4 Factor3
/* Lesson 05-7 */ /* File Name = DSles0607.sas 11/12/18 */ options linesize=72 pagesize=20; options nocenter linesize=78 pagesize=30; proc printto log = 'Kougi/DSles0607_log.txt' print = 'Kougi/DSles0607_Results.txt' new; ods listing gpath='Kougi/SAS_ODS99'; data food; infile 'Kougi/food.dat'; input X01-X10; label X01='M(-15)' X02='M(16-20)' X03='M(21-30)' X04='M(31-40)' X05='M(41-)' X06='F(-15)' X07='F(16-20)' X08='F(21-30)' X09='F(31-40)' X10='F(41-)'; proc print data=food(obs=10); run; proc factor data=food nfactor=3 rotate=varimax out=fscore2; var X01-X10; : 回転の指定 run; : proc print data=fscore2; var factor1-factor3; run; proc plot data=fscore2; plot factor1*factor2/vref=0.0 href=0.0; plot factor2*factor3/vref=0.0 href=0.0; plot factor3*factor1/vref=0.0 href=0.0; run;
2018年11月10日 土曜日 08時13分20秒 207 FACTOR プロシジャ 回転方法 : Varimax 直交変換行列 1 2 3 1 0.65777 0.53529 0.52990 2 -0.73396 0.61357 0.29126 3 0.16922 0.58051 -0.79647 回転後の因子パターン Factor1 Factor2 Factor3 X01 M(-15) 0.95490 0.13415 0.08963 X02 M(16-20) 0.85255 0.43757 0.13357 X03 M(21-30) 0.45872 0.81076 0.20605 X04 M(31-40) 0.22027 0.90003 0.29343 X05 M(41-) -0.02727 0.84202 0.46896 X06 F(-15) 0.91555 0.05731 0.32756 X07 F(16-20) 0.81272 0.18932 0.49758 X08 F(21-30) 0.58692 0.31451 0.66919 X09 F(31-40) 0.38658 0.45484 0.76506 X10 F(41-) 0.18417 0.37847 0.88485 因子の分散 Factor1 Factor2 Factor3 3.9249494 2.8740019 2.5453282 最終的な共通性の推定値 : 合計 = 9.344279 X01 X02 X03 X04 X05 0.93786990 0.93615660 0.91021020 0.94467297 0.92966229 X06 X07 X08 X09 X10 0.94880526 0.94393897 0.89119742 0.94163724 0.96012863 回帰による因子スコア係数の推定 変数群と各因子の重相関係数の 2 乗 Factor1 Factor2 Factor3 1.0000000 1.0000000 1.0000000 標準化スコア係数 Factor1 Factor2 Factor3 X01 M(-15) 0.35650 -0.01839 -0.21738 X02 M(16-20) 0.28150 0.18161 -0.29360 X03 M(21-30) 0.07559 0.43873 -0.30350 X04 M(31-40) -0.04982 0.47796 -0.20481 X05 M(41-) -0.19000 0.37303 0.04733 X06 F(-15) 0.28692 -0.18126 0.04983 X07 F(16-20) 0.19300 -0.16084 0.17154 X08 F(21-30) 0.04912 -0.13688 0.32854 X09 F(31-40) -0.06666 -0.06858 0.40164 X10 F(41-) -0.17324 -0.16356 0.59933 2018年11月10日 土曜日 08時13分20秒 221 : Factor1*Factor2. A=1, B=2, ... 2 + A | A | | | A A A A | | A A |A B A Factor1 | A A | A A A | A B AA B A | A A AA A B A A A A A | A A | A A A A A | A A |A B 0 +-------------------A------------A-+-A-A----A--A---------------------- | A A AA A | AA A | A A| A A A | AA | | A A A|A BA AA | A AA A A | A | A A A A | A A | A A | B A | A | -2 + A A| A --+----------+----------+----------+----------+----------+----------+- -3 -2 -1 0 1 2 3 Factor2 2018年11月10日 土曜日 08時13分20秒 222 : Factor2*Factor3. A=1, B=2, ... 4 + | | | | | | | | A A | | | 2 + A | | A A | AA A | A | A A A Factor2 | A | AAA A A A A | A A |AAA A A A | A B A B BAA A| A AAA A A A 0 +-------------------------------------A-----A-+-AAA---AAAA------------ | AA A|AB A A AB A | A A AAA A A | A B A A A | A A| A A A | A AAA A | A A | AA A A | A AA -2 + A | --+----------+----------+----------+----------+----------+----------+- -4 -3 -2 -1 0 1 2 Factor3 2018年11月10日 土曜日 08時13分20秒 223 : Factor3*Factor1. A=1, B=2, ... 2 + | | A A | A A | A A |AA A A | A A A A A | AB | A AAB A AA CA AA A A A A | A A A A B A A | B A B A AA 0 +---------------------A------------------+--AAA-A------A----B--------- | A A AA | AA A AA A B | A A A| AA AAAAA A Factor3 | A A A A| AA | B |A A A | A | A -2 + | | A | | A | A | | | A | | | -4 + | --+------------+------------+------------+------------+------------+-- -3 -2 -1 0 1 2 Factor1
30種類の趣味の性、年齢毎の特性調査の結果 : データ : syumi.dat
/* Lesson 05-8 */ /* File Name = DSles0608.sas 11/12/18 */ options linesize=72 pagesize=20; options nocenter linesize=78 pagesize=30; proc printto log = 'Kougi/DSles0608_log.txt' print = 'Kougi/DSles0608_Results.txt' new; ods listing gpath='Kougi/SAS_ODS99'; data hobby; infile 'Kougi/syumi.dat'; input code $ X1-X6; label X1='M(-29)' X2='M(30-49)' X3='M(50-)' X4='F(-29)' X5='F(30-49)' X6='F(50-)'; proc print data=hobby(obs=10); run; proc factor data=hobby nfactor=2 out=fscore; var X1-X6; run; proc plot data=fscore; : 回転前 plot factor1*factor2=code/vref=0.0 href=0.0; : コード化した記号 run; : proc factor data=hobby nfactor=2 rotate=varimax out=fscore2; var X1-X6; run; proc plot data=fscore2; : 回転後 plot factor1*factor2=code/vref=0.0 href=0.0; : コード化した記号 run; :
2018年11月10日 土曜日 08時13分53秒 224 Obs code X1 X2 X3 X4 X5 X6 1 A 4.00 4.25 3.83 4.50 4.67 4.00 2 B 4.17 3.89 4.00 4.50 4.17 3.75 3 C 3.83 3.44 2.83 3.57 3.17 1.50 4 D 2.83 4.22 3.83 3.71 3.00 2.25 5 E 4.17 4.11 3.83 3.57 4.00 3.75 6 F 2.33 3.56 3.33 2.93 2.83 2.75 7 G 1.83 2.44 2.33 3.71 3.83 3.75 8 H 2.50 1.89 2.00 4.21 3.17 3.75 9 I 2.00 1.44 2.00 4.07 3.33 3.50 10 J 4.00 3.33 3.33 3.00 3.17 2.25 2018年11月10日 土曜日 08時13分53秒 225 FACTOR プロシジャ 入力データタイプ Raw Data 読み込んだレコード 30 使用されたレコード 30 有意性検定のための 30 2018年11月10日 土曜日 08時13分53秒 226 FACTOR プロシジャ 初期因子抽出の方法 : 主成分解 事前共通性の推定値 : ONE 相関行列の固有値: 合計 = 6 平均 = 1 固有値 差 比率 累積 1 2.74351441 0.99579304 0.4573 0.4573 2 1.74772137 1.00266247 0.2913 0.7485 3 0.74505889 0.35714702 0.1242 0.8727 4 0.38791187 0.16159911 0.0647 0.9374 5 0.22631276 0.07683206 0.0377 0.9751 6 0.14948070 0.0249 1.0000 2 因子が NFACTOR 基準により示されます。 因子パターン Factor1 Factor2 X1 M(-29) 0.52708 0.63297 X2 M(30-49) 0.59628 0.64623 X3 M(50-) 0.64192 0.47370 X4 F(-29) 0.82757 -0.35514 X5 F(30-49) 0.79607 -0.43033 X6 F(50-) 0.61604 -0.62750 因子の分散 Factor1 Factor2 2.7435144 1.7477214 最終的な共通性の推定値 : 合計 = 4.491236 X1 X2 X3 X4 X5 X6 0.67846653 0.77316605 0.63644687 0.81099331 0.81890556 0.77325745 回帰による因子スコア係数の推定 変数群と各因子の重相関係数の 2 乗 Factor1 Factor2 1.0000000 1.0000000 標準化スコア係数 Factor1 Factor2 X1 M(-29) 0.19212 0.36217 X2 M(30-49) 0.21734 0.36976 X3 M(50-) 0.23398 0.27104 X4 F(-29) 0.30164 -0.20320 X5 F(30-49) 0.29016 -0.24622 X6 F(50-) 0.22454 -0.35904 2018年11月10日 土曜日 08時13分53秒 230 プロット : Factor1*Factor2=code 4 + | | | | | | | | | | | 2 + A B | | Z E | | Factor1 | R | | | D | 3 Q M | J O 0 +---------------HG-------------------2---+--F--------C---------------- | I K S P | N | | V U | |Y W | 1 T X | | -2 + 4 | --+------------+------------+------------+------------+------------+-- -3 -2 -1 0 1 2 Factor2 NOTE: 1 obs は表示されません。 2018年11月10日 土曜日 08時13分53秒 231 FACTOR プロシジャ 入力データタイプ Raw Data 読み込んだレコード 30 使用されたレコード 30 有意性検定のための 30 2018年11月10日 土曜日 08時13分53秒 232 FACTOR プロシジャ 初期因子抽出の方法 : 主成分解 事前共通性の推定値 : ONE 相関行列の固有値: 合計 = 6 平均 = 1 固有値 差 比率 累積 1 2.74351441 0.99579304 0.4573 0.4573 2 1.74772137 1.00266247 0.2913 0.7485 3 0.74505889 0.35714702 0.1242 0.8727 4 0.38791187 0.16159911 0.0647 0.9374 5 0.22631276 0.07683206 0.0377 0.9751 6 0.14948070 0.0249 1.0000 2 因子が NFACTOR 基準により示されます。 因子パターン Factor1 Factor2 X1 M(-29) 0.52708 0.63297 X2 M(30-49) 0.59628 0.64623 X3 M(50-) 0.64192 0.47370 X4 F(-29) 0.82757 -0.35514 X5 F(30-49) 0.79607 -0.43033 X6 F(50-) 0.61604 -0.62750 因子の分散 Factor1 Factor2 2.7435144 1.7477214 最終的な共通性の推定値 : 合計 = 4.491236 X1 X2 X3 X4 X5 X6 0.67846653 0.77316605 0.63644687 0.81099331 0.81890556 0.77325745 2018年11月10日 土曜日 08時13分53秒 235 FACTOR プロシジャ 回転方法 : Varimax 直交変換行列 1 2 1 0.77751 0.62886 2 -0.62886 0.77751 回転後の因子パターン Factor1 Factor2 X1 M(-29) 0.01176 0.82361 X2 M(30-49) 0.05723 0.87743 X3 M(50-) 0.20121 0.77199 X4 F(-29) 0.86678 0.24430 X5 F(30-49) 0.88957 0.16603 X6 F(50-) 0.87359 -0.10049 因子の分散 Factor1 Factor2 2.3497071 2.1415286 最終的な共通性の推定値 : 合計 = 4.491236 X1 X2 X3 X4 X5 X6 0.67846653 0.77316605 0.63644687 0.81099331 0.81890556 0.77325745 回帰による因子スコア係数の推定 変数群と各因子の重相関係数の 2 乗 Factor1 Factor2 1.0000000 1.0000000 標準化スコア係数 Factor1 Factor2 X1 M(-29) -0.07838 0.40241 X2 M(30-49) -0.06354 0.42417 X3 M(50-) 0.01147 0.35788 X4 F(-29) 0.36232 0.03170 X5 F(30-49) 0.38045 -0.00897 X6 F(50-) 0.40037 -0.13795 2018年11月10日 土曜日 08時13分53秒 238 プロット : Factor1*Factor2=code 2 + | | | A | | | | R B Factor1 | I H G 3 | Z | | E | Q | | K |M | S 2 | 0 +------------------------P-----+------------------------------ | |F D | | J O | | C | Y | V N | 1 T | | 4 | U | X | | | W -2 + | ---+-------------+-------------+-------------+-------------+-- -2 -1 0 1 2 Factor2 NOTE: 1 obs は表示されません。
上記で示したデータも含めていくつかデータを置いておく。
興味があればダウンロードして両手法に適用してはどうだろうか。