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 – INCLUDE編

    エクスチュア渡部です。今回はLODブログの第3弾です。INCLUD…

  2. Tableau

    Tableau-折れ線グラフ

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

  3. Tableau

    【基本】Tableau Server と Tableau Onlineどっちを選ぶ?

    はじめに組織内で「ダッシュボードの共有」「データソースの自動更新」を…

  4. Tableau

    Tableauで強調円グラフを作ってみた〜特殊チャート①〜

    はじめにこんにちは!インターン生の與那覇(ヨナハ)です今回は、長谷…

  5. Tableau

    【手順解説】MacでRedshiftに接続できない時の原因と対処法【Tableau経由】

    はじめに今回は、私(ヨナハ)が実際に業務でトラブったことをシェアした…

カテゴリ

最近の記事

  1. dbtCloud使ってみた
  2. ChainlitでのOAuth認証にスコープを追加する方法
  3. Snowflake無料トライアルの始め方
  4. TROCCO入門
  5. コンポーザブルCDPにおけるSnowflakeのマルチモーダ…
  1. Adobe Analytics

    DataWarehouseについて
  2. プログラミング

    Node.jsでCSVファイル内のダブルクオートで囲まれたカラム内のカンマを除去…
  3. IT用語集

    コマンド(Command)・コマンドプロンプト(Command Prompt)っ…
  4. IT用語集

    CAD・CAM・CAEって何?
  5. IT用語集

    アドイン(Add In)・アドオン(Add On)って何?
PAGE TOP