ナレッジベース

百分位のランクでグループ化してアイテムをカウントする方法


発行: 26 Sep 2022
最終修正日: 13 Sep 2023

ご質問

百分位のランクでデータをグループ化して、各グループ内のアイテムをカウントする方法。

環境

  • Tableau Desktop
  • Windows 10
  • Excel

回答

1. 以下のような複数のフィールドを作成します。
1) 名前: RANK_PERCENTILE(Sales)
値:
IF RANK_PERCENTILE(SUM([Sales])) <= 0.1 THEN "10"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.2 THEN "9"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.3 THEN "8"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.4 THEN "7"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.5 THEN "6"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.6 THEN "5"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.7 THEN "4"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.8 THEN "3"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.9 THEN "2"
ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 1.0 THEN "1"
ELSE NULL END
//百分位のランクでグループ化
2) 名前: count
値:
if first()=1 then 1
elseif
lookup([RANK_PERCENTILE(Sales)],0)=lookup([RANK_PERCENTILE(Sales)],-1)
then 1+
PREVIOUS_VALUE(0) 
else 1
end
//各グループ内のアイテムのカウント
3) 名前: filter
値:
if last()=0 or
 lookup( [RANK_PERCENTILE(Sales)],0) <> lookup([RANK_PERCENTILE(Sales)],1) then "break" end

2. [customer name (顧客名)] と [RANK_PERCENTILE(Sales)] を行にドラッグします。
3. [filter] をフィルター カードにドラッグし、アイテム [break] を選択して、[OK] をクリックします。
4. [count] をテキスト カードにドラッグします。
下の添付ファイルを参照してください。
前後
この記事で問題は解決しましたか?