リッカート法によるアンケートの相関分析を R でする方法のメモ

    はじめに

    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)