Tableauメモ〜LOD計算について〜
Tableauには特有の計算方法として、LOD計算があります。
LOD計算に関して、なんだか難しそう…
理解できるのかな…と勝手に苦手意識をもっていたんですが、この計算はTableauを勉強するにおいては避けられない部分であり、LOD計算によりTableauでの表現の幅が広がります。
ですので、私の理解を深めるためにも
今回はLOD計算について書きたいと思います。
LOD(Level of Detail)計算は、集計の粒度を自由に変えることができる手法になります。
通常の計算は、データソースの行レベルでしか集計ができないのですが、LOD計算を使えば行レベル以外での集計が可能となります。
LOD計算には以下3種類があります。
・FIXED
・INCLUDE
・EXCLUDE
◆FIXED
ビュー上でディメンションが使われていてもいなくてもディメンションを指定して集計することができます。
例えば以下の様なビューがあるとします。
これはカテゴリサブカテゴリごとの売り上げを表示したビューです。
これをFIXEDでディメンション「カテゴリ」を指定して集計するように計算フィールドで式を書きます。
作成したメジャーを入れると以下の様なビューができます。
先程と同じディメンションが入ったビューですが売り上げの値が違うのが分かると思います。
サブカテゴリを無視して、カテゴリごとに同じ数値がはいっています。
これは指定したディメンション「カテゴリ」ごとに売り上げを出すように指定しているからです。
さらにこのビューからカテゴリを外します。
(わかりやすくカテゴリ別に色分けして並び替えてます。)
それでも売り上げの値が変わりません。
カテゴリがビュー上から消えても、サブカテゴリを無視して、カテゴリで売り上げが集計され続けます。
このようにFIXEDはビュー上にあるなし関わらず、ディメンションを指定し集計することが可能です。
【式】
{FIXED[ディメンション名]:SUM([メジャー])}
※SUMの部分は、自身で集計計算を入れてください(SUM、MAX、MIN、COUNT(D)など)
◆INCLUDE
FIXEDと考え方は同じです。
ディメンションを指定して集計を行うんですが、FIXEDと違う所が、ビュー上にあるディメンションを無視せずに考慮して集計を行うということです。
計算フィールドに以下の式を入れてメジャーを作成します。
これを先程のFIXEDのビューにいれて比較してみると以下の様になります。
FIXEDとは違う結果になりました。
これは、FIXEDと違って、カテゴリを指定しつつ、ビュー上にあるサブカテゴリも考慮して集計をしているからです。
【式】
{INCLUDE[ディメンション]:SUM([メジャー])}
※SUMの部分は、自身で集計計算を入れてください(SUM、MAX、MIN、COUNT(D)など)
◆EXCLUDE
ビュー上に不要なディメンション(集計したくないディメンション)がある場合など、それを指定し除外して集計することができます。
例えば、以下の様な表があります。
カテゴリ別の売り上げがわかるビューです。
このビューはカテゴリ別に集計されていますが、カテゴリ別には集計してほしくない!という時、以下の様な式をかきます。
この式を計算フィールドに入れて、作成したメジャーを列に持っていくと以下の様なビューが作成されます。
ビュー上のディメンションは先程と同様にカテゴリのみではありますが、売り上げの値が先程とは違います。
三つのカテゴリに同じ値が入っています。
これはカテゴリでの集計を除外するように指定をしたため、カテゴリ別に売り上げが集計されず、総売り上げが表示されています。
この様にビューにあるディメンションでも集計から除外することが可能です。
【式】
{EXCLUDE[除外したいディメンション]:(SUM([メジャー])}
※SUMの部分は、自身で集計計算を入れてください(SUM、MAX、MIN、COUNT(D)など)
今回は簡単にLOD計算について説明しました。
(INCLUDEについてあまりかけていませんが…)
またの機会にこのLODの活用方法について、かけたらな〜と思います。
初心者のわかりにくい説明でしたが、
ご一読ありがとうございました!