Tableau

Tableau : IF文の「集計」「非集計」の混在を解決

こんにちは、エクスチュア渡部です。これから定期的にTableauやGoogleDataStudioのTipsを分かりやすくお伝えできればと考えています。

第1回目は、IF文における「集計」「非集計」についてです。

IF関数で計算結果を条件分岐させようとした際、「関数の集計および非集計の引数を混在させることはできません」と言うエラー文に悩まされている方は少なくないと思います。実はこれ、仕組みを理解すればとてもシンプルに解決することが出来ます。

その仕組みとは以下の通りです。

—–

IF [条件式]
THEN [結果1]
ELSE  [結果2]
END

において、
① [条件式]が集計なら、[結果1][結果2]も集計。
② [条件式]が非集計なら、[結果1][結果2]も非集計。

ただし以下は注意
(1) NULL及び、数値と文字列( 0,100,’合格’など )は、集計・非集計どちらとしても扱える。
(2) 表計算は「集計」、LOD式は「非集計」として扱われる。※詳細は本記事最下部

—–

集計とは「集計関数を用いた」状態、
非集計とは「集計関数を用いていない」状態(集計関数以外の関数や四則演算などはOK)です。
集計関数は主にSUM,AVG,MAX,MINなどの関数がメインです。
集計関数一覧(Tableauヘルプ)

つまり、
・[条件式]で集計関数を使うなら、[結果1][結果2]も集計関数を使う。
・[条件式]で集計関数を使わないなら、[結果1][結果2]も集計関数は使わない。
ということになります。

また、当然[条件式][結果1][結果2]に使用しているメジャーが、
計算フィールドによって作られた指標である場合、その計算フィールドが集計なら集計、非集計なら非集計として扱われます。

・「集計」「非集計」が混在出来ない理由

では、「集計」と「非集計」はなぜ共存出来ないのでしょうか?
それは集計関数を使った計算と、それ以外の計算の仕方の違いをみれば理解できます。

集計関数は、データソースの該当列の「全ての行」を用いて計算します。
一方で集計関数以外の関数は、全ての行を使用するというようなことはせず、
与えられた引数を処理するのみの関数です。

イメージを用意してみました。


※ROUND関数…指定された桁数に値を丸める関数。

このように計算の仕方が全く違うため、うまく条件分岐が行えなくなってしまうのです。
※「集計」「非集計」について理解を深めたい方は、TableauJapan社による記事をご参照ください。

「集計」「非集計」は最初はなかなか理解しづらい課題ですが、Tableauを使いこなす上での肝となる仕組みです。
仕組みを正確に理解できると、複雑な計算フィールドもスラスラかけたり、LOD式の理解が早まったりと良いことばかりです。

エクスチュアは国内では希少なTableau Certified Professionalも在籍するTableauのパートナー企業です。
また、Google Cloud Platform、Adobe Marketing Cloudといったマーケティングテクノロジーに精通した経験豊富なスタッフが、御社のビッグデータ分析をサポートします。

お問い合わせはこちらから

———

LOD式・表計算の補足

・LOD式
LOD式は、{FIXED [dimension] : SUM([measure])}のひと固まりを非集計として扱います。
補足)LOD式を集計として扱いたい場合は、MAX{FIXED[dimension]:SUM(measure)}と言ったように、LOD式全体を集計関数で囲います。

・表計算
表計算は、「WINDOW_SUM(SUM[measure])」や「index()」といった式全体を集計として扱います。

———-

ブログへの記事リクエストはこちらまで

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Tableau

    Tableau:分かりやすいLOD – EXCLUDE編

    こんにちは、エクスチュアの渡部です。TableauのLODブログ第…

  2. Tableau

    【学生向け】TableauのアカデミックプログラムでTableauが無料で使える!!

    こんにちは!エクスチュアインターン生の柳沼です。前回の投稿から期間が…

  3. Tableau

    Tableau Tips〜LOOKUP関数〜

    はじめに「LOOK UP」は見上げる、調べるという意味の英単語です。…

  4. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2023/03/20時点)

    こんにちは、エクスチュアの松村です。エクスチュアブログでの人…

  5. Tableau

    Tableau:分かりやすいLOD-FIXED編

    こんにちは、エクスチュアの渡部です。LODブログ第二弾です。今回は…

  6. IT用語集

    CRM(Customer Relationship Management)って何?

    はじめに「CRM」は主にマーケティング業界で使用されている言葉です。…

最近の記事

  1. 【GA4/GTM】dataLayerを使ってカスタムイベント…
  2. KARTE を使ってサイト外でも接客を
  3. 【GA4/GTM】dataLayerを活用しよう
  4. ジャーニーマップをデジタルマーケティングの視点で
  5. ChatGPT ProからClaude3 Proへ移行した話…
  1. Google Analytics

    Google Analytics フィルタ①
  2. Tableau

    DirectionAPI+Tableauでドライブ時間の可視化(後編)
  3. IT用語集

    ビッグクエリ(Big Query)って何?
  4. IT用語集

    ユビキタス(Ubiquitous)って何?
  5. Adobe Analytics

    Adobe Analytics 原理①
PAGE TOP