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 Serverの基礎をまとめてみた

    【目次】・はじめに・Tableau Serverが必要な理由・環…

  2. IT用語集

    【完全版】Tableau(タブロー)って何?

    【目次】・はじめに・Tableau(タブロー)とは・具体例〜Ex…

  3. Tableau

    Tableau:KPI達成状況を把握出来るグラフを作る

    こんにちは。エクスチュア渡部です。今回はTableauで↑のように…

  4. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2019/10/02時点)

    ※こちらの記事は過去の手順です。新しい手順についてはこちらの記事を参…

  5. Tableau

    【TC19ブログ】Tableau新データモデリング(リレーションシップ)解説

    ※本記事はTC19のDevsOnStageで発表と、TC19でのセッシ…

  6. Tableau

    Tableau-折れ線グラフ

    こんにちは!インターン生の市川です。今回は、私の主観なのですが、でき…

最近の記事

  1. 回帰分析はかく語りき Part3 ロジスティック回帰
  2. GCSへのSnowflake Open Catalogによる…
  3. VPC Service Controlsで「NO_MATCH…
  4. モダンデータスタックなワークフローオーケストレーションツール…
  5. Streamlit in Snowflakeによるダッシュボ…
  1. Google Analytics 4

    GA4のスキーマ変更にご用心
  2. Adobe Analytics

    Adobe Analyticsを学ぶ
  3. Adobe Analytics

    カスタムイベントとは-Adobe Analyticsの指標説明
  4. コンバージョンファネル

    ファネル分析
  5. Adobe Dynamic Tag Manager

    【Adobe Analytics,Launch】進化するDebugger
PAGE TOP