DATA Saber Bridge【Ordeal8】の感想
note読者の皆様、こんにちは!
転勤族協会TKT48の奥田美和です。
11/12から始まった「DATA Saber Bridge」コーナー。
Ordeal8まで進みました。
★Ordeal8の記録
<12/21>
Ordeal8 動画 1h
HandsOn - Advanced I 1~2
<12/24>
Ordeal8 動画 2h
HandsOn - Advanced I 3~6
<12/25>
Ordeal8 動画 2h+0.5h
HandsOn - Advanced I 7~11
・Ordeal8 解答
★仕事でOrd8が役に立った日
Ordeal8をやっている最中は、「もう嫌だ~分からない~」と半分泣きそうになりながら動画を見つつ作業していました(笑)
それが…
この「フィルタリング」こそが、ここまで何回かでてきた「クエリパイプライン」。
★そもそも「LOD(Level Of Detail)」とは?
分かりやすかったのが、ツイッターで流れてきたこちら。
ゼロから始めるLOD生活 〜概念を徹底理解する〜
https://public.tableau.com/app/profile/yusuke.sakai/viz/LOD_15896149928940/sheet0
LODとは、粒度を指定した中間テーブル…(を仮想的に作成できる機能)!!
確かに、Ord8では途中経過のクロス表を作成して値を確認しながら作成しました!
※計算フィールドの {FIXED [顧客 Id]:COUNTD([オーダー Id])}
これ自体が、【行(顧客 Id)×列(オーダーIdの個別カウント)】という中間テーブルなのですね。
さらに分かりやすかったのが、こちら。
LOD: 粒度
Viz LOD: ワークシートの粒度
LOD計算: FIXED/INCLUDE/EXCLUDE
<参考>
そもそも、サンプルスーパーストアの「注文」シート、
下記のようにDB設計時の並びで考えると分かりやすいかもしれません。
※地域は顧客IDに、カテゴリ・サブカテゴリは製品Idに紐づきます。
★仕事でどんな風に使ってみたのか
それでは、具体的に考えてみましょう。
実務データを載せる訳にはいないので、いつものサンプルスーパーストアのデータを使い、作業手順だけ実務と似たような感じにしてみます。
データソース:オーダー年月=2022/12
※エンジニアの方に、DBから今月分だけ抽出して作成してもらった
① 売上を見たい!(select)
② 何の項目ごとの?(group by:カテゴリ、地域、顧客ID、オーダーID、etc)
③ 描画されたマーク数(=抽出されたデータ数)が多いから絞りたい!
④ 何の項目で?
(where:地域=関東)【フィルター】
→ 地域はフィルタで絞ったから、とりあえず列から外そう
④ まだまだ多いから、列からオーダーIDを外してしまおう!
この辺りで「2022年のオーダー回数が2回以上の人に絞るか」と
さらなるフィルタリングの条件を考え付いた時に、
画面上(列)に「オーダーID」はありません(さっき外した)
↓
① 計算フィールド {FIXED [顧客 Id]:COUNTD([オーダー Id])}
② フィルターに入れて、2以上で設定
③ フィルタを表示
→ これで、オーダー回数を変えて、地域ごとにたくさん購入してくれている人をチェックできます。
あれ?「鷲正-16855」さん、関西でも関東でも出てくるのですが…
もしかして…明細データの住所の紐づけ、間違ってる!?
地域を列に入れてみたら、やっぱり!
それで、Ordeal8のQ10の問題、なのですね。
→ 「鷲正-16855」さんの正しい住所は、東海地方でした。
こんな感じで、FIXEDはクエリパイプラインの上位に来るので、
① FIXEDでフィルター
② ディメンション(今回は地域)でフィルター
と使うと、①を固定して、②は色々な切り口で変更できるので便利そうです。
★メモ
①【Q8】ソートカテゴリ
Q:並べ替え指定していないのに、どこで自動的に売上の差順に並べ替えてくれるのでしょうか…
A:並べ替えの「自動」=「データソース順」です。
行に入れたソート用フィールドは、数字を不連続で持っている状態なので、Tableauのデータソース順のルールに沿って、小さい数字→大きい数字(=昇順)になっていると解釈しています。
②【Q11】表計算(Index)
Next…
この記事が気に入ったらサポートをしてみませんか?