見出し画像

思う通りの順位にならない!クエリ パイプライン?

本日もTableau勉強中。
都道府県ごとの順位の比較をしたくてvizを作成したのですが、思った通りの動きにならず。。

選択した地域の都道府県の順位がそれぞれ何位なのか確認したかったんです。


都道府県ごとの売上金額と順位

おなじみのサンプルスーパーストアで「都道府県ごとの売上の順位」をVizで表現してみました。するとこんな感じに出来上がり!
使ったのは、表計算のランクです。

大阪府が1位、東京都が2位、愛知県が3位…と続きます。

売上のランク(順位)のグラフの作り方はこちらの記事で

地域のフィルターで選択

次は「地域」ごとでフィルターを入れて、見比べよう。
関東と九州に絞り込みして、、あれ?なんだかおかしい。思ったのと違う。

「関東地方」と「九州」でフィルター

東京都1位、福岡県2位、神奈川県3位、埼玉県4位?
東京都は2位だったはず?大阪府が1位だし。
今、表示されているデータで、順位が再計算されている。
各都道府県の順位を見比べたいのに、これでは分からない。。😒

クエリ パイプライン

なぜこうなるかと言うと、Tableauのクエリ パイプラインというものに関係しているようで。

Tableau の操作の順序(クエリ パイプライン)

Tableau ヘルプ

この順番だと、地域(①ディメンション)でフィルターされた後に、ランクの計算(②表計算)になるので、上のような結果になるのか。
うーん。。。どうしよう。

今回の処理の順番。ランクの計算結果は残したままフィルターしたいのに

じゃ、やり方をかえようということで、今回は次の方法でやってみます。


セットをフィルターの代わりにつかう

フィルターを使わずに、必要なデータだけ選択して表示するには?
今回は、セットデータの表示/非表示を使います。
フィルターには何も入れていない売上金額&ランクの設定をしたグラフの状態からはじめます。

1. データペインの「地域」を右クリックして、[作成]→[セット…]を選択
2. セットの作成の画面は、そのままOK
3. 作成したセットを、行シェルフに入れる

4. 作成したセットを、右クリックして、[セットの表示]
5. 表示されたセットの中から、1つ選択すると(どれでもよい)、グラフに
 inとoutが表示されるので、outの欄を右クリックし、[非表示]を選択
6. 行シェルフの「合計(売上) △」をクリックし[表計算の編集]
 次を使用して計算:特定のディメンション
 ☑︎ 都道府県 と ☑︎ 地域セットのin / Out と ☑︎ 地域の3つにチェックを入れる

7. 行シェルフの「IN/OUT(地域セット)」をクリックし、[✔︎ヘッダーの表示]を
  選択し、チェックを外す

表示しているセットから、地域を選択すると、都道府県ごとの順位の比較ができるようになりました。

「関東地方」と「九州」を選択すると、必要なデータだけ表示されつつ、元のままの順位

うまく行ってよかった😀
出来上がりのSampleファイルはこちら

Tableauのくせを理解しないと、意思疎通できないと今日も思いました。

いいなと思ったら応援しよう!