主成分分析
主成分分析を行うプログラムpca.exeによる本書「心理学データ分析と測定」の「5.1 分析例」の表5.1.1のデータ(DataTable511.txt)の分析結果を示す。プログラムの使い方は、ウェブサイト
http://y-okamoto-psy1949.la.coocan.jp/VCpp/pca/
を参照されたい。
プログラムを実行して表示されるフォームにおいて図1のように主成分数を2に設定する。
図1
図1のフォームでは2つの回転(バリマックス回転とプロマックス回転)が示されているが、主成分分析においても回転が意味をもつこと(回転の正当化)については参考文献Okamoto (2006)を参照されたい。
主成分数の設定後、「GO」ボタンをクリックすると、入力データファイル名の設定を求めるダイアログフォームが提示される(図2)。
図2
入力データは、本書「心理学データ分析と測定」の表5.1.1のデータ(DataTable511.txt)の場合、以下のように用意する。
/
6
ID Jpn Eng Hist Math Phys Chem
1 48 46 60 47 68 44
2 54 49 63 61 49 45
3 48 55 47 49 49 47
4 83 78 85 79 66 63
5 56 49 56 78 70 73
6 78 86 76 67 67 75
7 62 64 59 62 69 57
8 80 78 82 82 80 75
9 55 49 58 79 67 75
10 53 65 63 75 89 77
11 45 52 53 47 41 42
12 59 62 72 56 72 72
13 44 34 49 54 65 59
14 79 64 75 37 15 9
15 62 69 66 71 67 66
16 72 63 66 80 84 72
17 78 82 83 81 67 81
18 62 73 63 60 64 67
19 66 60 61 64 43 63
20 70 66 71 50 55 52
21 43 36 46 53 62 46
22 43 48 29 41 48 52
23 68 55 60 76 63 68
24 72 80 66 78 64 79
25 66 46 59 67 70 68
26 49 66 51 26 29 34
27 20 28 32 51 34 33
28 75 78 83 68 69 66
29 39 41 40 72 60 63
30 54 59 57 43 50 50
31 72 57 69 66 75 75
32 59 47 45 43 68 69
33 43 49 44 78 60 55
34 59 66 62 49 48 41
35 41 47 49 51 50 51
36 76 91 89 95 89 85
37 75 88 58 45 57 58
38 79 75 75 46 45 46
39 64 78 62 70 52 49
40 39 52 55 53 59 52
41 55 68 65 50 51 49
42 59 63 57 55 54 74
43 30 24 34 53 41 33
44 74 76 77 66 63 54
45 71 73 76 56 74 54
46 71 73 78 61 50 47
47 50 52 60 49 55 48
48 55 71 57 49 50 43
49 57 52 46 60 68 61
50 64 64 65 48 57 45
51 88 84 79 60 57 60
52 38 41 39 41 39 45
53 49 45 59 74 65 64
54 68 73 65 65 42 49
55 48 46 54 65 54 52
56 58 72 55 70 55 69
57 55 63 58 46 67 67
58 56 47 50 71 57 59
59 58 56 49 50 57 59
60 60 59 56 87 84 82
61 73 65 63 39 38 30
62 63 74 58 56 71 70
63 50 58 47 62 60 57
64 26 23 18 51 70 61
65 65 54 62 52 53 51
66 51 42 50 53 39 42
67 63 63 58 69 70 71
68 75 77 73 76 77 78
69 49 55 48 69 79 82
70 50 68 60 60 50 52
71 23 33 19 65 51 44
72 65 52 55 68 48 54
73 75 82 69 73 65 80
74 65 63 56 67 73 63
75 60 65 82 87 68 77
76 39 53 53 47 50 50
77 51 64 54 62 53 50
78 86 81 82 72 66 65
79 60 56 61 71 60 66
80 47 41 39 57 79 69
81 87 77 84 55 77 76
82 40 48 37 55 57 56
83 84 62 77 37 46 56
84 53 53 61 47 67 59
85 76 80 73 48 55 49
86 62 72 71 48 40 37
87 55 55 66 77 60 44
88 71 52 54 69 69 82
89 80 77 84 54 66 58
90 53 55 56 38 47 43
91 56 45 49 68 66 60
92 79 74 69 73 66 66
93 43 32 53 57 90 77
94 29 26 24 47 48 41
95 70 71 71 63 70 72
96 28 24 38 64 57 59
97 49 46 44 74 77 75
98 84 84 96 69 60 69
99 39 51 39 59 60 65
100 47 45 60 68 72 70
/
データは、スラッシュ「/」で始まる行で挟む。最初のスラッシュ「/」で始まる行の次の行に、主成分分析を行うデータの変量の数pを書く。次の行に各変量のラベルを空白で区切って書く。データはその次の行から、1行に1ケースのデータを書いていく。各行の1番目には、データのケース番号を書く。このケース番号は分析には用いられないが、データの入力を解りやすくするための番号である。また、ケース番号は文字列として読み込まれているので、英字などを含んだ「abc123」のようなものでもよい。
入力データファイル名を設定して、「開く」ボタンをクリックすると、次に、計算結果の出力用ファイル名の設定を求めるダイアログフォームが表示される(図3)。
図3
出力用ファイル名として適当なテキストファイル名を設定して、「保存」ボタンをクリックすると計算が始まる。計算が終了すると、計算結果を書き出した出力用ファイルが保存されたことを示すメッセージボックスが表示される(図4)。
図4
「OK」ボタンのクリックでプログラムの実行終了となる。
実行終了後、出力ファイルを開くと、図2で設定された入力データの場合、図1の下での計算結果は以下のようになる。
Data File = D:\yasuharu\www\LaCoocan\booksetc\pm2010\pca\pca\pca\DataTable511.txt
/
Vars = Jpn Eng Hist Math Phys Chem
n = 100
mean sd
Jpn 58.750 15.213
Eng 59.310 15.591
Hist 59.310 15.059
Math 60.520 13.056
Phys 60.090 13.287
Chem 58.940 13.981
Eigen values...
Squared lambda(1) = 3.25276 Cum. sum = 3.25276
Squared lambda(2) = 1.86791 Cum. sum = 5.12067
Squared lambda(3) = 0.42494 Cum. sum = 5.54561
Squared lambda(4) = 0.20646 Cum. sum = 5.75207
Squared lambda(5) = 0.14753 Cum. sum = 5.89960
Squared lambda(6) = 0.10040 Cum. sum = 6.00000
パターン行列
P.C.-1 P.C.-2
Jpn 0.82210 -0.48694
Eng 0.77575 -0.52727
Hist 0.81441 -0.48464
Math 0.64182 0.53731
Phys 0.62907 0.67123
Chem 0.71006 0.61535
バリマックス回転後のパターン行列
P.C.(VM)-1 P.C.(VM)-2
Jpn 0.14894 0.94381
Eng 0.08832 0.93382
Hist 0.14580 0.93641
Math 0.82313 0.15195
Phys 0.91818 0.05675
Chem 0.92677 0.15477
プロマックス回転後のパターン行列
P.C.(PM)-1 P.C.(PM)-2
Jpn 0.02187 0.94947
Eng -0.03904 0.94756
Hist 0.01968 0.94230
Math 0.82473 0.04268
Phys 0.93564 -0.06826
Chem 0.93083 0.03129
成分間相関行列...
P.C.(PM)-1 P.C.(PM)-2
P.C.(PM)-1 1.00000 0.26460
P.C.(PM)-2 0.26460 1.00000
上の出力内容は、本書「心理学データ分析と測定」の「5.1 分析例」に示されているものと同じであることが確認できる。
プログラムのソースコードファイルなどは圧縮ファイルpca.zipとしてまとめた。ダウンロード解凍すれば、Visual Studio 2013で開くことができる。
参考文献