本文來自於公衆號讀者投稿。做者Suke,數據愛好者,主攻方向:數據分析,數據產品化。微信
RFM模型簡介less
RFM模型是衡量客戶價值和客戶創利能力的重要工具和手段。本文介紹如何經過用戶的交易行爲的明細數據,利用Tableau對RFM模型進行實現,從而能夠對其進行分析。ide
RFM模型是衡量客戶價值和客戶創利能力的重要工具和手段。該模型經過一個客戶的近期交易行爲、交易的整體頻率以及交易金額三項指標來描述該客戶的價值情況。函數
R-最近一次消費(Recency),一般影響因素爲店鋪的記憶強度,接觸機會的多少,回購週期等。這個指標會用於決定客戶接觸策略,接觸頻次,刺激力度等。工具
F-消費頻率(Frequency),一般影響因素爲品牌的忠誠度,店鋪熟悉度,客戶會員等級,購買習慣等。這個指標會用於決定資源投入,營銷優先級,活動方案決策等。學習
M-消費金額(Monetary),一般影響因素爲消費能力和產品的承認度。這個指標會用於決定推薦商品,折扣門檻,活動方案等。spa
依據上述RFM這三個指標,能夠將客戶羣劃分爲8類客戶價值。.net
(圖注:本圖來自point數據分析課程講義)3d
看到以上的8類客戶價值,那咱們每一類客戶的分佈究竟是怎樣的呢?如何才能算出咱們想了解的客戶價值分類的客戶佔比?下面咱們就來看一下。
tableau實現的客戶價值分類效果圖
本次咱們使用tableau來探究RFM模型,tableau能把數據分爲度量和維度兩種。度量和維度的介紹能夠參考下面連接:
https://help.tableau.com/current/pro/desktop/zh-cn/datafields_typesandroles.htm
能夠在原數據的基礎上,根據須要創建新的字段。只須要簡單的拖拽,就能夠很方便的做出圖形。
◆ ◆ ◆ ◆ ◆
RFM模型實現
咱們分5步用tableau實現RFM模型。
Step1:數據預處理
這一環節主要是對數據格式進行處理,並添加新的數據列便於後續使用。本文數據使用tableau自帶數據「示例-超市」,數據是客戶在超市購物的清單,每件商品一條記錄。打開tableau能夠在連接到文件中加載數據源文件,或者直接雙擊打開tableau工做簿。
打開tableau加載數據
數據樣例展現(部分字段)
加載數據源後,tableau會自動根據數據分爲維度和度量兩種數據列。先對數據源維度進行分組整理,如圖中綠框中所示,分爲產品,客戶,訂單,訂單地區等,便於後續數據使用時的字段查找。數據源中的【銷售額】字段爲「¥43」這樣的字符串,所以須要對其進行變換拆分,得到【銷售額-拆分1】字段,並拖至度量區。
維度自動分組,拆分【銷售額字段】
Step2:R值建設:最近一次消費(Recency)
首先建立【最近一次的購物時間】,而後經過最近一次消費時間計算【R最近一次購物距離當前的日期差】(也能夠是對固定的日期),經過經驗或者【R最近一次購物距離當前的日期差】的分佈肯定【R參考值】,而後經過對比參考值與【R最近一次購物距離當前的日期差】的大小,標註出【R標記值】。最終效果以下:
最近一次下單時間分佈
經過對【最近一次的購物時間】分佈的觀察可知,大部分客戶在近期在超市有過購物行爲。
操做步驟:
在維度或者度量的空白區域右鍵,點擊建立計算字段。
建立計算字段
建立【客戶最後一次下單時間】,其計算公式爲{FIXED[客戶 Id]:MAX([訂單日期])}
(以下圖所示),表示對於固定的客戶,獲取最大的(最近的)的時間,即爲客戶的最近一次下單時間。
建立【客戶最後一次下單時間】字段
建立【R最近一次購物距離當前的日期差】,其計算公式爲DATEDIFF('day',[客戶最後一次下單時間],#2017-01-01#)
,表示對於固定的客戶,計算最後一次下單的時間與2017年1月1日的日期差(因爲數據均爲2017年以前的數據,所以選擇該日期爲標準日期)。
建立【R參考值】,其計算公式爲{FIXED:MEDIAN([R最近一次購物距離當前的日期差])}
,此處用【R最近一次購物距離當前的日期差】的中位數做爲分界點。若是業務有能夠參考的經驗值,也能夠直接把此處的公式替換爲經驗值。
建立【R標記值】,其計算公式爲IF([R最近一次購物距離當前的日期差]>[R參考值]) THEN 0 ELSE 1 END
。查看【最近一次的購物時間】分佈,如圖進行配置,X軸爲【客戶最後一次下單時間】,y軸爲【客戶 Id】,選擇快速表計算-總額百分比,能夠獲取每月的末次訪問佔總人羣的百分比數量。
查看最近一次購物時間分佈的設置步驟
Step3:F值建設:消費頻率(Frequency)
首先建立【F客戶累計單數】,而後經過經驗或者【F客戶累計單數】的分佈肯定【F參考值】,而後經過對比參考值與【F客戶累計單數】的大小,標註出【F標記值】。最終效果以下:
客戶累計訂單數分佈
經過對【F客戶累計單數】分佈的觀察可知,客戶對超市的訪問生命週期大約在5-7次。(此處是對歷史累計單量進行討論,也可因爲業務的差別判斷固定時間段內的訂單數據)。
操做步驟:
建立【F客戶累計單數】,其計算公式爲{FIXED[客戶 Id]:COUNTD([訂單 Id]) }
,表示對於固定的客戶,獲取累計單數。
建立【F參考值】,其計算公式爲{FIXED:MEDIAN([F客戶累計單數])}
。
建立【F標記值】,其計算公式爲IF([F客戶累計單數]>[F參考值]) THEN 1 ELSE 0 END
。
查看【F客戶累計單數】分佈,先建立【F客戶累計單數(數據桶)】(如圖所示,桶的步長能夠按照須要設定,此處設定爲1),以【F客戶累計單數(數據桶)】爲X軸,【F客戶累計單數】-計數 爲Y軸,可獲取【F客戶累計單數】分佈。
查看客戶累計單數分佈的設置步驟
Step4:M值建設:消費金額(Monetary)
首先建立【M客戶累計金額】,而後經過經驗或者【M客戶累計金額】的分佈肯定【M參考值】,而後經過對比參考值與【M客戶累計單數】的大小,標註出【M標記值】。
操做步驟:
建立【M客戶累計金額】,其計算公式爲{FIXED[客戶名稱]:SUM([銷售額])}
,表示對於固定的客戶,獲取累計單數。建立【M參考值】,其計算公式爲{FIXED:
MEDIAN([M客戶累計金額])}
。建立【M標記值】,其計算公式爲IF([M客戶累計金額]>[M參考值]) THEN 1 ELSE 0 END
。
Step5:客戶價值分類建設
操做步驟:
建立【 客戶價值分類】,其計算公式爲
IF [R標記值]=1 and[F標記值]=1 and [M標記值]=1 then '重要價值用戶'
ELSEIF [R標記值]=0 and[F標記值]=1 and [M標記值]=1 then '重要喚回用戶'
ELSEIF [R標記值]=1 and[F標記值]=0 and [M標記值]=1 then '重要深耕用戶'
ELSEIF [R標記值]=0 and[F標記值]=0 and [M標記值]=1 then '重要挽回用戶'
ELSEIF [R標記值]=1 and[F標記值]=1 and [M標記值]=0 then '潛力用戶'
ELSEIF [R標記值]=1 and[F標記值]=0 and [M標記值]=0 then '新用戶'
ELSEIF [R標記值]=0 and[F標記值]=1 and [M標記值]=0 then '通常維持用戶'
ELSEIF [R標記值]=0 and[F標記值]=0 and [M標記值]=0 then '流失用戶'
END
查看【客戶價值分類】客戶分佈,用【客戶價值分類】做爲X軸,用【客戶 Id】-計數(不一樣)做爲Y軸,選擇快速表計算-總額百分比。在【標記】部分複製【客戶 Id】-計數(不一樣)到【標籤】(mac端操做爲:鼠標選中同時按command或者control鍵),能夠柱狀圖上顯示出其在人羣中的佔比。
查看不一樣RFM類型客戶佔比的設置步驟
至此,你就能夠利用RFM模型作出一套完成的客戶分類模型。利用該模型,分維度下鑽研究,看客戶在不一樣地區,不一樣客戶類型,不一樣產品品類上客戶的表現。下圖如下鑽地區維度爲例,能夠看出西北地區的重要價值客戶較多,客戶構成比例較好。
按地區下鑽的RFM模型
上述只是基礎的RFM實現思路,可是其中關於分類維度的選取(如何定義R,F,M),劃分閾值選取是做爲一個分析師還可深刻探究。數據模型只是分析的開場白,還有不少業務內容是值得咱們去深究的。
爲方便讀者學習,做者提供了作好的tableau工做簿,能夠在公衆號後臺回覆:rfm 獲取。
◆ ◆ ◆ ◆ ◆
以清淨心看世界;
用歡喜心過生活。
超哥的雜貨鋪,你值得擁有~
長按二維碼關注咱們
推薦閱讀:
本文分享自微信公衆號 - 超哥的雜貨鋪(gh_a624b94bfdab)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。