SPSS と R の主成分分析の違い
いま DBS の「ビジネス統計学」という授業を復習として受けています。今日は主成分分析がテーマの1つでした。授業では SPSS をメインしています。教材の1つとして『文系のための SPSS 超入門』なのですが、こういうデータが載っていました。
銀行名 資本金 店舗数 職員数 預金高
みずほ 650 658 22267 49007
東京三菱 872 336 15211 47827
UFJ 844 525 19451 47039
三井住友 560 591 24079 58611
りそな 443 372 12485 22356
みずほコポ 1071 59 5379 14723
埼玉りそな 50 114 3086 8601
統合前の古いデータです。これを主成分分析してみましょう、というのが『文系のための~』の問題でした。手順どおりにすると、次のような主成分得点に基づく散布図が得られます。
私が「ビジネス統計学」の受講テーマは、R で授業の内容をすべてやってみる、というものです。R での主成分分析は prcomp() や princomp() を使います。得た結果を biplot() すると、次のような図が出ます。
!? SPSS と R では図が左右対称です。最初はビックリしました。「なんでだろう」と原因を探した結果、どうやら主成分負荷量の計算方法が違うのでは、という結論に至りました。
SPSS(主成分得点係数)
R(主成分負荷量)※ princomp() を使っています。
第1主成分のところの数字が違いますね。まぁ、本当はもっと調べたほうがよいのだと思いますが、そこまで思い入れがないので、このあたりで止めておきます。
追記(2015年5月24日)
『文系のための~』の中に、「主成分得点係数(主成分負荷量)の計算では、二乗和が1になるように制約することが多いが、SPSSはそういう方法を取ってない」みたいなことが書いてあったので、それが原因なのだとわかりました。