はじめに
5 段階アンケートで欲利用されるリッカート法と, アンケート結果の相関関係をを調べる方法を紹介します.
アンケート結果はカテゴリカルデータなため, そのままでは相関係数が求められないので, 一工夫必要.
[toc]
背景
職場でアンケートを実施したのだけれども, 分析の仕方が分からなかったので, カテゴリカルデータの相関分析方法を調べてみた.
リッカート法の紹介
リーカート法は, 5 段階評価, 7 段階評価のアンケート.
リッカードの視覚化には帯グラフが適している.
R で 相関を調べる
cor 関数を使う.
二変数の相関
cor (bull$YearsPro, bull$BuckOuts)
多変数の相関. 配列で渡す.
myvars <- c ('YearsPro', 'Events', 'BuckOuts')
cor (bull[,myvars])
カテゴリカルデータの相関
numeric データに変換
ここからが本題. カテゴリカルなデータの相関を出すには, カテゴリを数値に変換する必要がある. as.factor, as.numeric を利用する.
val <- as.numeric (as.factor (var))
plot で描写
相関関係の散布図を一度に生成することは, plot 関数で可能だ. しかし, カテゴリカルデータに対しては, あまりみても情報が得られない.
ここにシャレたグラフの R スニペットがある.
ポリクコック相関係数
相関係数はでピアソンを利用するよりも, ボリクコック相関係数を利用するのがよいらしい.
これはまだ試していない.
例
以下のようなデータから相関関係を読み取る.
向上心 好奇心 危機感 責任感 勤続 所属
3 3 4 4 21- 長野 3 3 5 5 11-20 川崎 2 3 5 4 11-20 川崎 4 5 4 4 21- 長野 4 3 5 4 -10 川崎 1 1 5 3 21- 川崎 1 1 4 2 -10 川崎 1 1 4 4 21- 川崎 4 2 5 5 11-20 長野 1 1 4 1 -10 川崎 2 1 5 3 21- 長野 4 5 3 4 21- 川崎 4 4 4 4 21- 長野
データ処理
カテゴリカルデータを変換.
answerNum <- answer
answerNum$勤続 <- as.numeric (as.factor (answer$勤続))
answerNum$所属 <- as.numeric (as.factor (answer$所属))
print (answerNum)
向上心 好奇心 危機感 責任感 勤続 所属
3 3 4 4 3 2 3 3 5 5 2 1 2 3 5 4 2 1 4 5 4 4 3 2 4 3 5 4 1 1 1 1 5 3 3 1 1 1 4 2 1 1 1 1 4 4 3 1 4 2 5 5 2 2 1 1 4 1 1 1 2 1 5 3 3 2 4 5 3 4 3 1 4 4 4 4 3 2
相関をもとめる
factors <- names (answerNum)
result <- cor (answerNum[,factors])
result <- round (result, 4)
向上心 好奇心 危機感 責任感 勤続 所属
向上心 1 0.822 -0.1041 0.6775 0.1867 0.4872 好奇心 0.822 1 -0.3991 0.5277 0.3136 0.2521 危機感 -0.1041 -0.3991 1 0.2198 -0.2306 0.0195 責任感 0.6775 0.5277 0.2198 1 0.3947 0.2823 勤続 0.1867 0.3136 -0.2306 0.3947 1 0.4739 所属 0.4872 0.2521 0.0195 0.2823 0.4739 1
散布図
plot (answerNum)