【IF式をわざわざ重ねなくても、DAXを使用すれば注文数で会員をセグメントできます】
下の画像のようなデータから会員/Customer_IDを注文数でセグメントする場合はIF式やピボットテーブルを組み合わせる必要がありました
Order-Segment
DAXとパラメーターを使用すれば、簡単にセグメントが行えます
ポイント
今回は注文データからセグメントを行いますので、一旦、SUMMARIZE関数を使用して会員番号毎に注文数を紐づけるテーブルを作成するのがポイントです
上記のテーブルからFILTER関数を使い、注文数毎に会員数を集計します
パラメーターの作成
まずはFILTER関数内で、注文数のフィルターに使用するパラメーターを作成します
次の画像で、フィルターに設定する数値範囲を設定します
上記の数値範囲を設定すると2つのものが作成されます
1つは数値範囲を設定したテーブルです
もう一つはメジャーです
こちらのメジャーをFILTER関数内で使用します
セグメントをするメジャーの作成
顧客別注文数 =
①VAR CustomerOrders=
SUMMARIZE(
‘OrderData1’,
OrderData1[Customer ID],
“注文数”,
COUNT(OrderData1[Order ID])
)
RETURN
②COUNTROWS(
FILTER(
CustomerOrders,
[注文数]=③[パラメーター 値]
)
)
③は前述のパラメーターを作成した時のメジャーになります
パラメーターで設定した値(1~10)毎(行毎に)に会員を抽出する形になります
FILTER(CustomerOrders,[注文数]=③[パラメーター 値])
会員を抽出したら②の「COUNTROWS関数」でセグメント毎の会員数を集計します
マトリックスの作成
最後にマトリックスを作成します
行には下の画像のパラメーターを使用します
<まとめ>
今回は注文データから、注文数で会員をセグメントしたデータを作成します
エクセルのワークシートで行おうとすればIF関数やピボットテーブルを組み合わせる必要があります
DAXを使用する場合は、FILTER関数をうまく使えば簡単に行えます
コメントを残す