人事でのアンケート可視化・分析を考えてみる(その1)
やりたいこと:アンケート回答の経年変化を可視化
会社で働いているといろんな部署が出している様々なアンケート/サーベイに回答する機会がある。私もこれまでは面倒だなと感じながら回答していたのを思い出します。
人事部門に来てみて感じたのはこのアンケート、社員一人ひとりの状態を知る非常に重要なコミュニケーションであるということです。
しかしながら毎回アンケートを取得するタイミングの集計/分析となっているケースが多く、社員がせっかく回答した情報がうまく蓄積・活用されていない…なんてことはないでしょうか。
この投稿ではTableauを使ってアンケート回答の経年変化を可視化することにチャレンジしてみます。
結構なボリュームになってしまったので、2部構成でお届けします…!
アンケートデータ
社員アンケートにはGoogleFormやMicrosoft Forms、各種サーベイサービスを活用して取得されます。
…とはいっても実際の社内アンケートデータは使えないので、超簡素化アンケートデータをChatGPTに作ってもらいました。(DeepResearh目的で最近課金しましたがChatGPTマジですごい…)

今回、キャリア開発の意識調査アンケートとして下記のような内容で作成しました。
設問(回答は1~5の5段階回答)
設問①「あなたはキャリアが描けていますか?」
設問②「周りにキャリアモデルとなる同僚・先輩はいますか?」
設問③「スキルアップに向けた取り組みは行っていますか?
基礎情報
回答期間:2024年4月~10月(四半期調査)
回答者数:200名
属性情報:性別・年代・役職
※今回のアンケートデータはChatGPTによるダミーデータのため、回答や分析結果に傾向があるわけではありません。
参考までにExcelデータを置いておきます。
アンケートデータの可視化①(単月結果の可視化)
アウトプットイメージ
さて、アンケートデータが準備できたところでアンケート結果の可視化を行っていきます。
まずは単月のアンケート結果を可視化していきましょう。
アウトプットイメージは↓です。

このVizを作るために必要な工程を記載していきます。
データの前準備
「段取り八分、仕事二分」とはよく言いますが、TableauでもVizを作るためにやることの大半はデータ準備です。
本来のアンケートデータであれば、社員基礎情報の付与(Tableau prepでの社員マスタとのデータ結合など)が必要になります。
今回はChatGPTで作成したダミーデータのため省略し、必要な社員基礎情報(性別、年代、役職)が付与された前提でデータの前準備を進めていきます。
設問のピボット
Google FormやMicrosoft Formsでアンケートを取得すると大半は横持ち(アンケート設問ごとに列データが作成)になっているのではないでしょうか。
Tableauでこのデータを可視化する場合、設問ごとのカラムになってしまうため、「設問①」「設問②」などのディメンションを列や行に配置しても、期待する可視化はできないです。

そのため設問と回答、それぞれのディメンションを作成する必要があり「ピボット」を利用します。

すると、設問と回答、それぞれのディメンションが作成され、縦持ちデータに変換することができました。

グループ化
今回の回答データでは1~5の5段階回答にしていますが、可視化を簡易化するため、Tableauの「グループ化」を使って「肯定的」「中立的」「否定的」の3段階にグルーピングします。

「そうである」「どちらかといえばそうである」を「01_肯定的」
「どちらでもない」を「02_中立的」
「そうではない」「どちらかといえばそうではない」を「03_否定的」
にそれぞれグルーピングします。

属性変更パラメーター
さて可視化!と行きたいところですが、このまま可視化に進むと基礎データだけで3シートも作成しないといけなくなります。
ダッシュボード化も想定すると、属性情報だけで画面が圧迫されることは避けなければなりません。

そこで使うのが「パラメーター」です。
今回はパラメーターを選択することで属性情報を変更できるようにしていきたいと思います。

今回のデータにおける社員属性は3つなので1~3の数字を割り当て、それぞれ表示名を記載します。

そしてこの社員属性パラメーターで選択した内容を反映するディメンションを作成します。

計算フィールドを開き、下記関数を入力します。
if [社員属性]=1
then [年代]
elseif [社員属性]=2
then [性別]
elseif [社員属性]=3
then [役職]
END
これでデータの前準備が完了です。
可視化(Vizの作成)
さて、ここから可視化に移っていきます。
このパートでは単月のアンケート結果を可視化するため、最低条件としては下記のあたりでしょうか。
・設問ごとの回答状況(人数/割合)
・参照する回答月を変更できる
・属性を変更できる
メジャーの作成(人数/割合)
メジャーとなるのは「人数」(およびその割合)ですが、このデータにはメジャーがありません…
人事データあるあるですが、個人単位のデータになるため「人数」は個人に一意に紐づく情報から集計する必要があります。
※社員コード、メールアドレスなど

そのため「社員id」から以下のようにメジャー「人数」を作成します。
countd([社員id])
ここで作成した「人数」を列、「属性」を行に配置してみましょう。

属性情報を選択して変更するためには「パラメーターの表示」を選択します。

すると「社員属性」の項目を選択するとそれに紐づくディメンションが反映されるようになります。

ここまでで「人数」の切り口として「社員属性」を付与しましたが、設問と回答情報を加えてみましょう。
「設問」を行に、「回答(グループ)」を色に配置します。

これでも悪くはないのですが、肯定的、否定的の印象を強めるために色の変更をしてみましょう。
「マーク」の「色」→「色の編集」から変更をします。
変更したい項目をクリックし、変更したい色をクリック→「適用」もしくは「OK」で変更されます。

回答年月の選択(フィルター)
今回のデータは3回分のアンケートデータになっているため、単月データを可視化するにはアンケート回答年月を選択する必要があります。
方法は簡単で「回答年月」を「フィルター」にドラッグ&ドロップしましょう。
どのようにフィルターをするか求められますが、今回は四半期ごとのアンケート調査のため「年/月」で良いでしょう。

これで回答年月を選択して単月の回答状況を確認できるようになりました。

属性別では人数にばらつきがあるため単純な人数比較だけでは傾向が見えづらいです。
回答割合も併せて可視化することによって、傾向をつかむことが可能です。
回答割合を表示させるには「簡易表計算」を使います。
(今回は人数と割合を可視化するので、事前にCtrl+ドラッグ&ドロップで「人数」をコピーしておきます)
列に配置している「人数」を右クリックし「簡易表計算」→合計に対する割合」を選択します。

さらにもう一度右クリックし、「次を使用して計算」→「表(横)」をクリックします。

表計算の方向については書くと長くなってしまうので、ぜひ他の方のnote等を参考にされてください!
これで当初の目的を満たすVizが出来上がりました!
・設問ごとの回答状況(人数/割合)
・参照する回答月を変更できる
・属性を変更できる

Viz作成のNoteだと長くなってしまいますね…
アンケートの回答変化については次の投稿でまとめていきたいと思います!
今回記載したVizについてはTableau publicに掲載予定です。
次回noteでリンクを共有します!(Coming soon!)
ではまた次回の投稿で!