【3つの指標をSCORE化し、オリジナルの観点で見える化を行えるようにしよう】
RFM分析*は昔からある分析手法ですが、Power BIを使用するとまた違った見せ方ができるようになります!
*R(Recency:最終購買日)、F(Frequency:購買頻度)、M(Monetary:累計購買金額)の3つの指標での分析
上のGIF画像では、Power BIの機能を活用してRFM分析にて行った内容を2つのストーリーで可視化できるようにしています
・金額ベース/Manetaryベースと会員数ベースの違い
・上記Manetaryの観点⇒RFMの観点
例えば、こちらのPower BI画面により金額と会員数ベースの違いが明確に分かります
続いて2つのビジュアルの階層を1つ下げると、最終注文からかなり月数が経っている会員(R:長)が多いことに気づけます
上記はあくまで例ですが、RFM分析とPower BIを組み合わせることにより、膨大なデータから「新たな発見」ができるかもしれません
ポイント
まずは従来のRFM分析通りに、「R(Recency:最終購買日)、F(Frequency:購買頻度)、M(Monetary:累計購買金額)」の3つの観点でランク付けします
今回の記事では、3つの観点それぞれを1と2でランク付けします(後で変換します)
更に今回の記事ではそれぞれのランクを組み合わせてSCORE化します
使用RAWデータ
使用するRAWデータは次の画像の注文データです
1年内で1回しか注文しない会員もいれば、複数回注文する会員もいます
ランク付け
まず最初に行うのは、RFMそれぞれの観点でランク付けを行うメジャーを作成することです
ランク付けを行う前に、RFMそれぞれの観点で「値/VALUE」を抽出する必要があります
Recency
⇒R-RANK = SWITCH(TRUE(),’MEASURE’①[R-VALUE]>3,”2″,”1″)
こちらはSWITCH関数を使用します
第一引数をTRUEにすることで、複数の条件式を組み合わせて使用することができます
①DATEDIFF(‘MEASURE’②[dayMax_customer],”2023/03/31″,MONTH)
DATEDIFF関数を使用して、2つの日付の「差」を抽出します
②は会員毎の最終注文日を抽出するメジャーです
こちらは次のように記述します
dayMax_customer = MAXX(FILTER(‘raw_data’,’raw_data'[CustomerID]=’raw_data'[CustomerID]),’raw_data'[OrderDate])
FILTER関数でテーブルから該当会員を絞りこんだ後に、MAXX関数で注文日の最終日を抽出しています
Frequency
⇒F-RANK = SWITCH(TRUE(),’MEASURE’①[F-VALUE]=1,”2″,”1″)
こちらもSWITCH関数を使用します
①は会員毎の注文回数を抽出するメジャーです
F-VALUE = COUNTROWS(raw_data)
COUNTROWS関数で該当する行(該当会員)の数を抽出しています
Monetary
⇒M-RANK = SWITCH(TRUE(),’①MEASURE'[M-VALUE]<100000,”2″,”1″)
①は会員毎の合計金額を抽出するメジャーです
M-VALUE = SUM(‘raw_data'[SalesAmount])
SCORE化
前述の3つのメジャーを通じて、会員毎にそれぞれのランク付けを1と2で行います
更にその後、1と2の文字列を組み合わせてSCOREを作成します
そのためにはSUMMARIZE関数を使用し、会員毎にSCOREを含むテーブル/rfmTableを作成します
SUMMARIZE関数はピボットテーブルと同じように、集計しながらテーブルを作成してくれます
*注意:メジャーでも新しい列でもなく、新しいテーブルから作成します
文法としては次のように書きます
SUMMARIZE(集計の切り口(会員ID),作成する列名,集計式・・・)
*SUMMARIZECOLUMN関数と似ていますが別です
rfmTable = SUMMARIZE(‘raw_data’,raw_data[CustomerID],”R-RANK”,’MEASURE'[R-RANK],”F-RANK”,’MEASURE'[F-RANK],”M-RANK”,’MEASURE'[M-RANK],“SCORE”,’MEASURE'[R-RANK]&’MEASURE'[F-RANK]&’MEASURE'[M-RANK],”M-VALUE”,’MEASURE'[M-VALUE])
上記の”SCORE”列はランクを含む列を&で組み合わせて作成しています
rfmTableを作成したら「SCORE」テーブルとでリレーションを作成します
ツリーマップの作成
ツリーマップでは四角形の大きさで数字の大小を表示します
数字の大きいものが「右より左」「下より上」に並ぶのも特徴の一つです
今回のツリーマップでは階層を複数で作成するのがポイントです
これでツリーマップの階層をコントロールできるようになります
<まとめ>
今回はPower BIの機能を活用してRFM分析の見せ方を進化させる方法を解説しました
紹介した内容はあくまで、解説しやすくするためにかなり簡素化しました
例えば、ランクは1と2の2つで付けましたが3つや4つに増やした方が分かりやすいケースもあります
またSCORE化もSCORE自体に「超VIP」「ご無沙汰優良」などのネーミングを付けて定点観測するといいかもしれません
ぜひオリジナル方法を見つけて活用してみてください
コメントを残す