このノートは、データラングリング(データの加工・整形)に関するExploratoryの機能を効率的に手を動かしながら体験していただくために用意された「データラングリング」のトライアルツアーの第2弾、「データの持ち方」編です。
データにはデータが増えるほど横に広がる「ワイド」型のデータと、縦に伸びる「ロング」型という2つの持ち方があり、各々の持ち方に得意なことがあります。
このパートでは、ワイド型とロング型のデータを自由自在に変換する方法を体験していただければと思います。
所要時間は20分ほどとなっています。
それでは、さっそく始めていきましょう!
例えば、以下のデータがあったとします。このデータでは、月ごとに列が存在しています。
このようなデータの形式は、データが増えていくと、横方向に伸びる(列が増える)データとなっているため、「ワイド型」と呼ばれています。
一方で、下記のように月ごと、国ごとに行が分かれているデータがあります。
このようなデータの形式は、データが増えていくと、縦方向に伸びる(行が増える)データとなっているため、「ロング型」と呼ばれています。
一般的に、アナリティクスを使った分析には、1行が観察対象(顧客、従業員、商品、など)となっているワイド型データが適しており、集計・可視化には、カテゴリーと値がそれぞれの列にまとまっているロング型データが適しています。
データ分析をするときは、出したいアウトプットに応じたデータの持ち方に変換をしていく必要があります。
今回はサンプルデータとして、ロング型に変換のパートでは「Appleの移動傾向」、ワイド型に変換時のパートでは「顧客満足度調査」のデータを使用します。
それぞれのデータは以下のページからダウンロードできます。
データをダウンロードできたら、ダウンロードしたフォルダを開き、「Appleの移動傾向」と「顧客満足度調査」のファイルをまとめて選択し、Exploratoryの画面にドラッグ&ドロップします。
インポートのファイル選択のダイアログが表示されるため、「インポート」のボタンをクリックします。
インポートダイアログの左側にある項目から、インポート時の設定を行うことが可能ですが、今回は設定は不要なため「全てをOK」のボタンをクリックします。
「Appleの移動傾向」と「顧客満足度調査」のデータを一気にインポートすることができました。
ここからはインポートしたデータを使って、ワイド型のデータをロング型に変換する方法と、ロング型のデータをワイド型に変換する方法を体験いただきます。
Exploratoryでデータを加工するときには、2つのやり方があります。
1つは自然言語でデータを加工できる「AI プロンプト」を利用した方法で、もう1つは列などからアクセス可能なデータの加工の「UI メニュー」を利用した方法です。
こちらのトライアルツアーでは、その両方を使ったデータの加工方法を紹介します。
なお、「AI プロンプト」はBusiessプランやPersonalプランなどの有償ライセンスをお持ちのユーザー様とそれらのプランをトライアル中のユーザー様のみ利用可能なメニューです。
また、AI プロンプトはご利用の端末がインターネットに接続できるときにのみご利用可能な機能です。
そのため、上記のプランをご利用でない場合や、インターネットに接続していない端末をご利用の場合、「UIでデータを加工する」セクションにお進みください。
AI プロンプトでは、データ加工に関して実行したい処理を指示することで、やりたいことを実現するためのRコードを生成します。
プロンプトを実行すると、「Rコマンド」と「使用している関数の説明」、「期待される結果」の3つが出力されます。
Rコマンドでは、質問された内容を処理するために必要なデータラングリングのタスクがRのコードとして出力されるため、ステップとして実行を押すことでその処理が適用されます。
Rコマンドで使用している関数は、「使用している関数の説明」の方でどういった関数や引数が使われているのかを説明しています。
最後に、「期待される結果」のセクションでは、このコードを実行することでどういった結果が得られるのかを説明するようになっています。
ではAI プロンプトを使ってデータを加工していきましょう。
まず最初は、「Appleの移動傾向データ」を使用します。
データの列数を見ると356列とかなり多いことがわかります。
移動傾向のデータが日ごとに列としてあるため、列数が多くなっています。
ワイド型のデータは可視化がしにくいデータとなっています。
例えば、日付をX軸に持ってきて移動傾向を可視化したいです。
しかし、それぞれの日が列となっているためX軸に「日付」を選ぶことができず、時系列の推移を可視化していくことができません。
もしデータがロング型になっていて、日付と移動変化の列があった場合は、
X軸に「日付」をY軸に「移動傾向」を割り当てることで、時系列の推移をラインチャートとして可視化することが可能です。
そのため、データをワイド型からロング型へ変換していきましょう。
「AI データ加工」ボタンをクリックします。
AI プロンプトのダイアログが表示されたら、以下のようなテキストを入力し、実行します。
日付列をロング型に変換して
すると、日付列をロング型に変換するためのコードが生成されます。
このときプレビューボタンをクリックすると、AI プロンプトを実行したときの結果を確認できます。
ロング型のデータに変換されていることを確認したら、「ステップとして実行」ボタンをクリックします。
実行することで、ワイド型からロング型へ変換することができました。
ただし、日付列がCharacter型のままのため、Date型に変換します。
「AI データ加工」ボタンをクリックして、AI プロンプトのダイアログに以下のようなテキストを入力し、実行します。
日付列を日付型に変換して
日付列をDate型に変換するためのコードが生成されるので、「ステップとして実行」ボタンをクリックします。
日付列をDate(日付)型に変換できました。
移動傾向の推移をラインチャートとして可視化したい場合は、チャート・ビューに移り、チャートピンをステップ3に紐づけます。
チャートには以下の項目で設定をします。
これにより、移動傾向の推移をラインチャートとして可視化することができました。
次に、「顧客満足度調査データ」を使用します。
回答者、アンケートの質問ごとに行があるロング型のデータとなっています。
ロング型のデータでは、質問ごとの回答の平均値などの可視化はしやすいです。
一方で、質問どうしの関係性を可視化したい時、分析したい時には質問ごとに列が分かれていなければいけません。
そのため、データをロング型からワイド型へ変換していきましょう。
「AI データ加工」ボタンをクリックします。
AI プロンプトのダイアログが表示されたら、以下のようなテキストを入力し、実行します。
質問と回答の列をワイド型に変換して
すると、質問と回答の列をワイド型に変換するためのコードが生成されます。
このときプレビューボタンをクリックすると、AI プロンプトを実行したときの結果を確認できます。
ステップが追加され、ロング型からワイド型へ変換することができました。
これにより、アンケートの質問ごとに列を持つデータとなり、質問間の関係性の分析や可視化がしやすくなりました。
まず最初は、「Appleの移動傾向データ」を使用します。
データの列数を見ると356列とかなり多いことがわかります。
移動傾向のデータが日ごとに列としてあるため、列数が多くなっています。
ワイド型のデータは可視化がしにくいデータとなっています。
例えば、日付をX軸に持ってきて移動傾向を可視化したいです。
しかし、それぞれの日が列となっているためX軸に「日付」を選ぶことができず、時系列の推移を可視化していくことができません。
もしデータがロング型になっていて、日付と移動変化の列があった場合は、
X軸に「日付」をY軸に「移動傾向」を割り当てることで、時系列の推移をラインチャートとして可視化することが可能です。
そのため、データをワイド型からロング型へ変換していきましょう。
日ごとにある移動傾向の値の列をシフトキーを使って複数選び、「ワイド型からロング型へ」の「選択された範囲」を選択します。
「ワイド型からロング型」へのダイアログが表示されます。
「開始」の列に最初の日、「末尾」の列に最後の日の列を選択します。
「キー列」には「日付」、「値の列」には「移動傾向」を入力して実行します。
また、ロング型に変換した際に、キー列、値の列に合わせて自動でデータタイプを変換するための「データタイプを自動検出」の機能がデフォルトで「はい」になっています。
実行することで、ワイド型からロング型へ変換することができました。
さらに、日付や移動傾向の列の値に合わせて、日付の列はDate(日付)型に、移動傾向の列はNumeric(数値)型に自動で変換されています。
移動傾向の推移をラインチャートとして可視化したい場合は、チャート・ビューに移り、チャートピンをステップ2に紐づけます。
チャートには以下の項目で設定をします。
これにより、移動傾向の推移をラインチャートとして可視化することができました。
次に、「顧客満足度調査データ」を使用します。
回答者、アンケートの質問ごとに行があるロング型のデータとなっています。
ロング型のデータでは、質問ごとの回答の平均値などの可視化はしやすいです。
一方で、質問どうしの関係性を可視化したい時、分析したい時には質問ごとに列が分かれていなければいけません。
そのため、データをロング型からワイド型へ変換していきましょう。
質問と回答の列をシフトキーを使って複数選び、「ロング型からワイド型へ」を選択します。
「ロング型からワイド型」へのダイアログが表示されます。
キー列には「質問」、値の列には「回答」が選択されていることがわかります。
プレビューをした時に結果に問題がなければ、実行ボタンをクリックします。
ロング型からワイド型へ変換することができ、アンケートの質問ごとに列を持つことができました。
データラングリングのトライアルツアーのデータの持ち方編は以上となります!
データラングリングのトライアルツアーの他のパートは下記のリンクからご確認いただけます。ぜひ次の「テキストデータの加工」のパートも実施してみてください。