Tableau初心者の入門メモ（データの準備）



Tableauで操作を始める前に、そもそもデータソースをいじらなきゃなんない。
そんなときのために、今回はデータソースに関してメモ。

Makeover Mondayの2020 Week1のデータをサンプルに。
https://data.world/makeovermonday/2020w1-what-is-americas-most-popular-sport

##データのフィールド名
とりあえずTableauにデータをドラッグしたらこんな感じ。
![101.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/934fff1b-767e-4438-35c4-38c1996d46bb.png)
フィールド名が正しく読み込まれないのはなぜ。ということで、1行目がフィールド名だよーって事を設定してあげよう。
![102.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/8a54a0a5-8796-b010-389b-6a1e77d4b4e6.png)
データソースを右クリックして、「フィールド名は1行目に含まれている」にチェック

結果、下記図の通りきれいな形に。
![103.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/6263898f-73e5-4734-bf18-6df0e49deedc.png)
##ピボット
フィールド名はきれいになったけど、年毎のデータがそれぞれメジャーになっている（横持ちデータ）ので、Tableauさんでは扱いにくい。
ということでメジャーを一つにまとめて縦持ちのデータに。
![104.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/1176a3a3-6f4b-e662-ca91-fd1b58551d63.png)
対象のメジャーを全部選んで右クリック⇒「ピボット」

結果、下記図の通りデータが縦に。
フィールド名はデフォルトになるので、適した名前に修正。
![105.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/ee059f2a-a7cf-bbf8-c9d7-9cf511cda474.png)
##データの結合（Join）
さて、一旦ピボットする前に戻ってデータを見ると、年が飛び飛びになってる。
ということで、間を埋めよう。
※今回はメモ用に別のファイルで空いた年のダミーデータを作成。
足りない年のデータをドラッグするとこんな感じ。
![106.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/5b30fece-0096-adb6-5497-d46892a2e3a7.png)
左上には新しいデータソースが追加されました。
また、右上にはベン図でデータが紐づいたように見えるけど、まだできてない。（右下見てもらうとデータがフィールド名しか表示されてない）
ここで、結合のボックスで紐づけるためのキーを設定。今回は「Sport」でいいでしょう。
正しく設定ができると、下記のように。
※右下はさっきと同じでフィールド名がうまく読み込まれていないので、修正。
![107.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/9814c8e4-6ed5-625f-3ad6-03e0bad45ce4.png)
右下にデータが表示されるように。

さて、じゃあさっきと同じようにピボットで縦持ちデータにかえて作業を始めよう！と言いたいところなのに、別ファイルのデータソースを結合すると、いずれか1つのデータソースしかピボットできないことが発覚・・・。

ということで、別ファイルではなく同じデータソースの中に別シートで同様のダミーデータを作成。
左側にシートが追加されるので、あとはさっきと同じように結合して、ピボットを試すと・・・
![図1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/c3fb4eb0-61c3-6be7-1678-b6c45dec58af.png)
完成！

##データのブレンド
さて、異なるデータソースをくっつける別の方法も。
今回はSportを「球技」と「その他」でカテゴリ分けするために、別のデータソースでSportにカテゴリを振ったデータを準備。

さて、とりあえずまずはTableauでSportを表示。
![109.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/08e4746d-d8aa-5590-41fd-abfccd1f6afd.png)
ここでSportの右側に球技かその他かのカテゴリを表示させたいので、カテゴリのデータをビューにドラッグすると左上がこんな感じに。
![110.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/4e30ff28-41af-97b8-b633-12b403330921.png)
データが接続されたことを確認したら、データ⇒リレーションシップの編集をクリック
![111.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/a5591786-4955-186c-e825-0f5a77e8ae34.png)
編集画面で、プライマリデータソースにベースとなるデータを、セカンダリデータソースに追加したいデータを選択し、追加ボタンから紐づけたいキーを設定。
![112.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/96d99d36-8e8a-f855-f3de-eac18b8ade24.png)
紐づけされたセカンダリデータベースのキーに赤いチェーンのマークがついたらOK。
それでは、カテゴリのディメンジョンをビューにドラッグ。
![114.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/589595/20922329-8f48-ee8e-30b0-675289bf8702.png)

できた！。

この状態から、前の記事で書いたプライマリグループの作成につながる感じ。

#結合とブレンドの使い分け
結合：データをくっつけて集計する。
ブレンド：それぞれ集計後にデータをくっつける。

基本的には結合が使えるなら結合で対応した方がもろもろ処理しやすくお勧め。
ただし、データの粒度が異なる場合（日別データと月別データみたいな）は、結合ではなくデータのブレンドを使う。

##おわり
データをくっつける方法にはもう一つ「ユニオン」というものが存在。（元データ的に触れられず。）
なんかの機会にまたメモ残せれば・・・。