民間企業への採用試験が進む中、どの学生を採用するか最終決定する採用責任者の手元には次のデータが集まってきました。
エントリーシートの評価点
ポートフォリオの評価点
面接の評価点
ここで、採用責任者の手が止まります。
「果たしてこれらの点をそのまま足してしまっていいのだろうか?項目ごとに重みを変えたほうが良いのではないだろうか?」
今回練習する主成分分析は、「評価指標はいろいろあるけどコレだ!という一つの指標に絞り切れない」といった場合に、各指標の選別や重みづけをして総合的な指標をつくることに使えます。
上記の採用責任者の場合、「エントリーシートの評価点に0.5、ポートフォリオの評価点に0.7、面接の評価点に0.8の重みをかけたうえで合計点を算出すると、応募者のポテンシャルを把握することができるようになる」といった場面で使います。
主成分分析で用いるデータは、いくつかの指標で評価した部屋のタイプごとの結果です。
リビングの場合、CA4~CD13のセルが今回使うデータです。
次に、そのデータを別のエクセルのブックに保存します。
このデータを眺めてみると、NPSの値と緊張覚醒の値は大きく異なる値ですし、「リラックスしている」の値もずいぶん違います。
このままこの3つの評価指標の値を扱っていくと、どうしても値の大きな項目の影響を課題に見てしまいそうです。
そこで使うのが標準化という方法です。
ただし、次で登場する関数には、すでに標準化が組み込まれています。
R Studioを立ち上げます。
主成分分析にもRを使っていきます。
Macユーザーの方は、ディレクトリの確認に手間がかかってしまいますが、よろしくお願いします。
R Studioに以下を書き込みます。
太字は、変える必要がありそうな部分を示しています。
comp<-read.csv("c:/Users/kankyo/Desktop/04_201217_主成分分析_リビング_v01.csv",header=T)
comp
pca<-prcomp(comp[,2:4],scale=T)
summary(pca)
pca$rotation
biplot(pca)
上記スクリプトの中ほどの2:4は、2列目から4列目にデータが入っている、ということを示しています。
今回の場合は、評価する指標が3つですので、2列目、3列目、4列目にデータが入っているということを示しています。
R Studioの左上のペインにスクリプトをコピー&ペーストしたら、全てを選択し、上の→Runをクリックします。
すると、左下のペインには分析結果が数値で表示されます。
右下のペインには主成分分析の結果の図が表示されます。
左下のコンソールをもう少し拡大してみてみます。
> summary(pca)
Importance of components:
PC1 PC2 PC3
Standard deviation 1.6964 0.31498 0.15207
Proportion of Variance 0.9592 0.03307 0.00771
Cumulative Proportion 0.9592 0.99229 1.00000
> pca$rotation
PC1 PC2 PC3
NPS 0.5697036 -0.8138843 0.1141497
緊張覚醒 0.5793571 0.4962279 0.6466090
リラックスしている 0.5829092 0.3022420 -0.7542325
PC1, PC2は、第一主成分、第二主成分を意味しています。
Cumulative Proportionは、累積寄与率のことで、この値が0.8(80%)を超えるまで、第一主成分、第二主成分、、、と考慮する範囲を広げていきます。
今回の場合は、第一主成分のみで0.95に達していますので、第二主成分以降は無視します。
次に、NPS、緊張覚醒、「リラックスしている」の値の3つの指標の重みを考えます。
NPSの行のPC1の下に0.569...と数字が書かれています。この値がNPSの重みです。
0.579..は緊張覚醒の重み、0.5829...はリラックスしているの重みを意味します。
以上の分析より、3つの指標の重要さは0.57~0.58に集まっており、これらの指標の重要さはほぼ同じであったと考えることができます。
勉強部屋とリビングについて、主成分分析の結果(各評価指標の重み)を算出し、その結果とグラフをpptに貼り付け、C-Learningにアップロードしてください。