Tableau Prepを使ってデータを加工してみる
Tableau Prepを使って分析用データソースを作成してみました。
今回は厚生労働省にて公開されているコロナウィルス関連のデータを使用します。
データのダウンロード→データの取り込み→データの加工
の流れでやっていきます。
【データのダウンロード】
www.mhlw.go.jp
上記リンクからデータをダウンロードし、
Tableau Prepに読み込ませます。
データの種類は以下の通り。
・日別新規陽性者推移(csvファイル)
・重症者数推移(csvファイル)
・入院治療に要する者等推移(csvファイル)
・累計死亡者数(csvファイル)
【データの取り込み】
Tableau Prepを開いて、ダウンロードしたデータを取り込んでみます。
Tableau Prepの初期画面はこのようになっています。↓↓
今回はcsv形式のファイルを取り込むので、テキストファイルを選択して、
ダウンロードしたファイルを取り込みます。
↓↓
ダウンロードした4ファイルを取り込めました。
取り込んだ4ファイルをTableau Prep上で加工して、1つのデータソースにしてみようと思います。
【データの加工】
まず、取り込んだファイルですが、それぞれ以下のような形式になっていました。↓↓
日別、地域別の新規感染者数等のデータになっていましたが、
地域が横持ちになっているため、項目が多すぎて分析に使いづらいデータになっています。
これを縦持ち形式に変換且つ、4つのデータを結合させる加工を行いたいので、
①データを縦持ちに変換
(項目を日付、地域、数値項目の3つにする)
※都道府県別数値を出すため、ALL項目は排除
②それぞれのデータを結合させて1つにする
の手順で進めていこうと思います。
手順①
まずは①の手順、縦持ちに変換をします。
Tableau Prepのピボット機能を使います。
都道府県項目をピボットされたフィールドに移動させて、
都道府県を項目化させます。↓↓
※ピボット1の名前という名前になってしまったので、わかりやすいように「都道府県」に変更します。
以上で縦持ち化は完了です。
他のファイルも同様の処理を行います。
※入院治療に要する者等推移は「入院治療が必要な人」の数値だけ使用します。
また、入院治療に要する者等推移の都道府県項目のみ「(Hokkaido) Requiring inpatient care」のような名称になっていたので、関数でトリミング処理をいれました。↓↓
※使用した関数は以下。
REPLACE(TRIM( SPLIT( [ピボット1 の名前], ")", 1 ) ),"(","")
ここまでで、①の手順完了です。
手順②
次は②それぞれのデータを結合させて1つにする、を実施していきます。
縦持ち化させたデータをドラッグ&ドロップさせ、データを結合させていきます。
新規陽性者数のデータを元に外部結合、結合キーは日付と都道府県に設定しました。
結合後、発生したダブり項目を削除すれば②の手順完了です。↓↓
以上で日付、都道府県別の縦持ちデータソースの完成です。
項目は以下の通り。↓↓
マスタの作成
ファイルを結合させてデータソースを作ってみましたが、
都道府県項目はそのまま使うと値が47種類もあり、
分析にはあまり向いていないと思ったので、都道府県マスタを作成して地域項目を追加してみようと思います。
ついでにローマ字の都道府県名称も修正します。
まず、以下のようなエクセルファイルを作成します。
名称は都道府県マスタ。↓↓
作成したエクセルファイルをprepに取り込み、
データソースに結合させます。
結合後は発生した不要項目を削除します。↓↓
これでデータソースの作成は完了です。
出力ボタンを押せば、hyperファイルとしてデータソースが出力されます。
※TableauServerへのパブリッシュもできますが、今回はhyperファイルとして出力しました。
項目は以下の通り↓↓
次回はこのデータソースを使って、実際に分析をしてみようかと思います。