Tech Waves

produced by Hakuhodo DY ONE

あれれ〜?Tableauの個別カウントの総計がおっかしいぞ〜?と思ったら

はじめに

こんにちは、廣本です🕵️‍♂️。

Tableauを使っていると、たまに期待した結果と異なる挙動をすることがあります。例えば、顧客数等のカウントの総計を出したとき、それが合計になっていないことがあります。

あれれ〜?Tableauの個別カウントの総計がおっかしいぞ〜?バグかな〜?と思った方。でも安心してください、これはバグではありません。真実はいつもひとつなのです。

ということで今回は、カウントの総計が計算される謎とその真実にせまっていきたいと思います。

 

総計とは?

Tableauの総計は列または行全体の集計結果を表示します。基本的には表形式のビジュアライゼーションで使用することが多いです。

ビジュアライゼーションでの合計の表示

個別カウントの総計

そんな便利な総計ですが、個別カウントの集計結果は注意が必要です。

合計売上のように、合計結果の総計は下記のように全行の合計値が計算されます。

 

ちなみにちょっとしたTipsですが、データを選択するとその集計結果は下に表示されます。上記の総計の結果と一致しているとが確認できますね。


しかし、個別のカウントの総計の場合は、先述の通り合計値にはなっていません。

 

これはなぜかというと、各行の計算方法と、総計の計算方法が異なるためです。

各行のカウントは、それぞれのカテゴリ・サブカテゴリにおける顧客数をカウントしていますが、総計のカウントはカテゴリ・サブカテゴリ別ということは考慮せず、テーブル全体の顧客数をカウントしています。

クエリとしては、以下のような差があります。

カテゴリ・サブカテゴリ別の個別カウント

SELECT category, sub_category, COUNT_DISTINCT([顧客名]) FROM table_name
GROUP BY 1,2

総計の個別カウント

SELECT COUNT_DISTINCT([顧客名]) FROM table_name

1人の顧客が複数の商品を購入している場合があるため、カテゴリ・サブカテゴリ別の顧客数の合計はテーブル全体の顧客数と一致しません。


個別カウントの総計で合計値を出すためには?

では個別カウントの総計において、合計結果を表示することはできないのでしょうか?実はそんな場合の回避策があります。

「分析」タブから「合計」→「すべて使用して合計」→「合計」を選択します。

 

すると総計の結果が、各行の合計に変化します。

 

一応、下の結果を確認してみると、きちんと合計になっていることが確認できます。


まとめ

今回は個別カウントの総計についてまとめてみました。ぜひご活用ください!

この記事を書いた人

廣本 (id:hrhrkun)

以前はBIの開発業務を担当。今はナレッジマネジメントの推進や、AIエージェントの開発をメインにいろいろ行っています。