Tableau(タブロー)Prepツール 演習その① -年齢区分最適化
フィールドマージとピボット
はじめに
今回は、Tableau(タブロー) Prepツールを使用して、新宿区の人口データを使って演習してみます。今回のゴールは、町別人口を100%とした時の年齢区分ごとの割合をビジュアライズする、が最終ゴールです。なお、今回よりもう少し複雑なデータを扱って、弊社クライアントに対して技術提供しております。このような作業は、現場でも必要となる作業の一つといえそうです。この機会を利用して、ぜひ、基本パターンを学習してみてください。
この記事でまなぶPrep機能はこちら
-
データインタプリター
-
ステップの追加
-
フィールド削除、フィールド名の変更
-
フィールドマージ
-
ピボット
-
出力
今回のスタートとゴールイメージ
データ構造については、横持ちの年齢区分(5歳区分)を10歳区分に変更しながら縦に持ち変えることがテーマです。
スタート)
http://www.city.shinjuku.lg.jp/kusei/file02_00026.html
ゴール)
手順
① excelデータを取り込む
②データインタプリターを使用する
使用目的は、テーブル表を自動検出するためです。
③ステップを追加して、フィールド名を町丁名に変更
ステップを追加して、まずは、町名が列記されたフィールドをリネームします。そして、変更履歴を確認しておく。この変更履歴は取り消したり、別のステップへ変更操作をコピーできる点も認識しておくと良いです。
④プロファイルペインの表示/非表示を切替るスイッチがある(赤丸)。これをクリックして、データグリッドを表示しながら、データ構造を確認して進めること。
プロファイルペインの表示/非表示切替スイッチでデータグリッドが表示領域拡大できます。そこで、全カラム(列)の全体像を確認しておきます。年齢区分と接頭辞+年齢区分と混在していることがわかります。ここの列名のクリーニングも必要なことがわかります。
⑤合計フィールドを一斉に削除する
下記のように、合計を表すフィールドを削除しておきます。こちらは、Tableau側で再計算する必要があるためです。また、65歳以上再掲フィールドも不要ですので削除します。
削除対象:合計、65歳以上再掲載
現在までのクリーニング履歴は下記の通り。
⑥ステップを追加して、10歳区分に再編成するため、フィールドをマージ&リネームする
ステップを追加して、0=>4と5=>9を下記の通り、フィールドマージします。これと同じ手順で、10際区分に再編成します。フィールドマージする場合、ドラッグ&ドロップする方法と、複数選択して右クリック>マージと進む方法の2種類があります。どちらでも構いません。なお、ステップを追加する理由は、ステップを同じ作業単位で小分けすることで保守性が高まると考えるためです。マージしたら、リネームしてください。マージするタイミングで、自動でリネームされます。
ドラッグ&ドロップ
複数選択してマージする方法
リネーム後のデータグリッドは下記の通り。
⑦1回目のピボット(列→行)を実行します
このピボットを実行することで、年齢区分が縦持ち構造に変更可能となります。Tableauの得意なデータ構造になります。
下記の通り、リネームします。
⑧ステップを追加して、現況を確認しておく
ここまでは、特に問題ありません。
⑨ デスクトッププレビューを使って確認します
下記
プレビュー結果、合計が混在しております。これを削除します。
Tableau Prepに戻って消しておきます。下記を除外します。
⑩出力の追加
出力の追加を設定します。ここでは、csv, tde, hyper形式の3種類を指定できます。また、分岐することで異なるファイルを同時に出力することもできます。出力するときは、メニュー>すべて実行 で実行してください。
11.出力
CSV出力の結果はこちら。
12.Tableauでビジュアライズ
今回は、.hyper からビジュアライズしてみます。
まとめ
今回は、フィールドマージによる年齢区分の再編成とピボットを使ってデータ構造を変更してみました。何らかの区分を持つようなデータを再編成したい場合に応用できると思います。ぜひ、トライしてみてください。