
このトピックは2024/5/7のExploratory Hourで放送されたものです。
アンケートデータの回答コード(例:1, 2)を、別のデータフレームにある対応する値(例:男性、女性)で置き換える方法について説明します。この手順は、アンケートの回答コードを人間が読みやすいラベルに変換する際に有用です。
回答データがコード(例:1, 2)になっているため、そのままではどの回答をしているのかわからない。そのため、別のデータフレームにある回答ラベル(例:男性, 女性)に置き換えたい。
例えば、以下のようなアンケートのデータがあったとします。

性別や年齢職種などが数値のコードとなっており、例えば性別の1だった時には男性か女性のどちらなのかがここだけではわかりません。
もう一つマスタデータを持っており、こちらではそれぞれの回答コードに対応する回答ラベルのデータを持っています。

そこで、回答データにある回答コードをマスタデータにあるラベルで置き換えていきます。

アンケートデータの形式変換
まず、アンケートデータをマスターデータと結合できる形式に変換します。
回答者IDの列ヘッダメニューから「ワイド型からロング型へ」の「選択された列」を選択します。

ワイド型からロング型へのダイアログが表示されるため、新しい列名には以下のように指定します。

実行すると、データが「質問名」と「回答コード」の2列にまとまります。

マスターデータとの結合
変換したアンケートデータとマスターデータを結合します。
「質問名」と「回答コード」列をShiftキーを押しながら複数選択し、列ヘッダメニューから「結合」を使用します。

結合先のデータフレームとしてマスターデータを選択し、キー列として「質問名」と「回答のナンバー」に対応する列を指定します。

実行すると、「回答のラベル」列が追加されます。

不要な列の削除
結合後、「回答コード」列が不要になるため削除します。
「回答コード」の列ヘッダメニューから「列を選択/削除」を使用します。

「取り除く」にチェックをつけて実行します。

回答コードの列を取り除くことができました。

データの形式を元に戻す
最後に、データを元の形式(1行1回答者、列ごとに質問)に戻します。
「質問名」と「ラベル」の列をShiftキーを押しながら選択し、「ロング型からワイド型へ」を実行します。

対象となる列には以下のように指定して実行します。

実行すると、1行1回答者、列ごとに質問の元のデータ形式に戻ります。

補足: 数値データの処理
5段階評価などの数値データだが文字列のラベルになってしまう場合、数値データに変換をすることでその後の集計・可視化などをする際に役立ちます。

該当する列をShiftキーを押しながら複数選択し、「値を置き換える」の「新しい値を指定」を選択します。

新しい値には以下のように指定します。
例:「非常に不満」→1、「不満」→2、…、「非常に満足」→5

実行することで、5段階評価の文字列データを数値データに置き換えていくことができました。

この方法を使用することで、アンケートデータの回答コードを意味のあるラベルに変換し、データの可読性と分析のしやすさを向上させることができます。
AI プロンプトを使うことで、UIのように複雑な処理をすることなく、簡単かつ素早く値のコードをラベルに変更していくことが可能です。
まず、値のコードと対応するラベルがあるマスターデータを開きます。

エクスポートボタンから「クリップボードにエクスポート」を選択します。

回答データのデータフレームを開き、「AI データ加工」をクリックする。

プロンプトには「値を以下で置き換えて」の後に先ほどクリップボードにエクスポートした対応表を貼り付けます。

それぞれの列のコードに対応するラベルの値に変更するためのRコマンドが出力されます。

実行することで、質問コードだった値をラベルに変更することができました。
