100種分析思維模型(005號)
很多分析思維模型,本質(zhì)上都是在研究人的行為。
下面介紹的 RFM 分析思維模型,本質(zhì)上也是在研究人的行為。
1. 模型介紹
美國有一個叫 Arthur Hughes 的研究所,從客戶數(shù)據(jù)庫中發(fā)現(xiàn)了 3 個神奇的要素:
(1)Recency 最近購買時間,離得越近,價值越大。
(2)Frequency 累計購買次數(shù),次數(shù)越多,價值越大。
(3)Monetary 累計購買金額,金額越高,價值越大。
將這 3 個要素分別按價值的高、低進(jìn)行分組,從而得到 8 種不同類型的客戶,分別采取不同的營銷策略。
運用之前介紹過的矩陣分析模型,把 8 種類型按照 M 的高低分成兩個矩陣,一個矩陣是針對重要客戶的營銷策略:
1重要價值客戶:R 高 F 高 M 高,可以提供個性化的 VIP 服務(wù),提升品牌的價值。
2重要發(fā)展客戶:R 高 F 低 M 高,可以制訂客戶忠誠度培養(yǎng)計劃,幫助他們成為重要價值客戶。
3重要保持客戶:R 低 F 高 M 高,可以推送個性化的激勵活動,以重新建立連接,提高復(fù)購率。
4重要挽留客戶:R 低 F 低 M 高,可以采取召回策略,調(diào)查問題之所在,想辦法進(jìn)行挽留。

5一般價值客戶:R 高 F 高 M 低,可以提供優(yōu)惠活動,以吸引他們提高客單價。
6一般發(fā)展客戶:R 高 F 低 M 低,可以提供試用活動,以提高客戶購買的興趣。
7一般保持客戶:R 低 F 高 M 低,可以改變宣傳策略,以刺激客戶繼續(xù)購買。
8一般挽留客戶:R 低 F 低 M 低,可以適當(dāng)減少預(yù)算,以降低營銷的成本。

2. 應(yīng)用舉例
以我在知識星球分享過的超市數(shù)據(jù)集為例,用 Python 實現(xiàn)自動讀取和處理數(shù)據(jù),對客戶價值進(jìn)行分類,并用條形圖展現(xiàn)不同類型的客戶數(shù)量占比。

從圖中可以看出,「一般挽留客戶」的占比較大,「重要發(fā)展客戶」的占比較小,說明客戶的忠誠度有待提升。
建議制訂客戶忠誠度培養(yǎng)計劃,通過促銷活動等形式,激活重要保持客戶,深挖重要發(fā)展客戶,吸引客戶重復(fù)購買,提升客戶的忠誠度,不斷產(chǎn)生新的重要價值客戶。
假設(shè)你的營銷預(yù)算不多,只能給 20% 的客戶提供服務(wù),你是選擇服務(wù)重要價值客戶,還是選擇服務(wù)一般挽留客戶呢?同樣的成本,不同的營銷策略,帶來的收益差異可能是巨大的。
下面是用 Python 進(jìn)行 RFM 分析的完整代碼:
# 導(dǎo)入所需的庫
import?os
import?numpy as?np
import?pandas as?pd
import?datetime as?dt
import?matplotlib.pyplot as?plt
# 正常顯示中文標(biāo)簽和負(fù)號
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 讀取 Excel 文件(公眾號后臺回復(fù):超市)
df_excel = pd.read_excel('../data/超市數(shù)據(jù).xlsx')
# 最近購買時間
R = df_excel.pivot_table(values=['訂單日期'], index='客戶 ID', aggfunc=max)
# 累計購買次數(shù)
F = df_excel.drop_duplicates(subset=['訂單 ID', '客戶 ID'], keep='first').pivot_table(values=['訂單 ID'], index='客戶 ID', aggfunc='count')
# 累計購買金額
M = df_excel.pivot_table(values=['銷售額'], index='客戶 ID', aggfunc=sum)
# 合并RFM
RFM = R.join(F).join(M)
# 定義列名
RFM.columns = ['R', 'F', 'M']
# 計算間隔天數(shù)
R_date = dt.datetime(2021, 2, 13)
RFM['R_days'] = (R_date - RFM['R']).dt.days
# 分類標(biāo)簽
labels = ['高', '低']
# 計算 R 分類,間隔天數(shù)越少,價值越高
bins = RFM.R_days.quantile(q=np.linspace(0, 1, num=3), interpolation='nearest')
RFM["R_type"] = pd.cut(RFM.R_days, bins=bins, labels=labels, include_lowest=True)
# 計算 F 分類,購買次數(shù)越多,價值越高
bins = RFM.F.quantile(q=np.linspace(0, 1, num=3), interpolation='nearest')
RFM["F_type"] = pd.cut(RFM.F, bins=bins, labels=labels[::-1], include_lowest=True)
# 計算 M 分類,購買金額越大,價值越高
bins = RFM.M.quantile(q=np.linspace(0, 1, num=3), interpolation='nearest')
RFM["M_type"] = pd.cut(RFM.M, bins=bins, labels=labels[::-1], include_lowest=True)
# 對客戶價值進(jìn)行分類
RFM['type'] = ''
RFM.loc[(RFM['R_type']=='高') & (RFM['F_type'] == '高') & (RFM['M_type'] == '高'), 'type'] = '1重要價值客戶'
RFM.loc[(RFM['R_type']=='高') & (RFM['F_type'] == '低') & (RFM['M_type'] == '高'), 'type'] = '2重要發(fā)展客戶'
RFM.loc[(RFM['R_type']=='低') & (RFM['F_type'] == '高') & (RFM['M_type'] == '高'), 'type'] = '3重要保持客戶'
RFM.loc[(RFM['R_type']=='低') & (RFM['F_type'] == '低') & (RFM['M_type'] == '高'), 'type'] = '4重要挽留客戶'
RFM.loc[(RFM['R_type']=='高') & (RFM['F_type'] == '高') & (RFM['M_type'] == '低'), 'type'] = '5一般價值客戶'
RFM.loc[(RFM['R_type']=='高') & (RFM['F_type'] == '低') & (RFM['M_type'] == '低'), 'type'] = '6一般發(fā)展客戶'
RFM.loc[(RFM['R_type']=='低') & (RFM['F_type'] == '高') & (RFM['M_type'] == '低'), 'type'] = '7一般保持客戶'
RFM.loc[(RFM['R_type']=='低') & (RFM['F_type'] == '低') & (RFM['M_type'] == '低'), 'type'] = '8一般挽留客戶'
# 統(tǒng)計各類客戶的數(shù)量及其占比
df = RFM.pivot_table(values=['R'], index='type', aggfunc='count')
df['占比'] = round(df.R/df.R.sum()*100, 2)
# 用條形圖展現(xiàn)客戶價值的分布
from?pyecharts import?options as?opts
from?pyecharts.charts import?Bar
num = list(df.占比[::-1])
lab = list(df.index[::-1])
bar = (
????Bar(init_opts=opts.InitOpts(width='900px', height='600px', page_title='RFM'))
????.add_xaxis(lab)
????.add_yaxis('', num)
????.set_colors('#00589F')
????# 坐標(biāo)軸翻轉(zhuǎn)
????.reversal_axis()
????.set_series_opts(label_opts=opts.LabelOpts(position='right'))
????.set_global_opts(title_opts=opts.TitleOpts(title='RFM分析:不同類型的客戶數(shù)量占比(%)'))
????.render('RFM.html')
)如果把微信通訊錄中的聯(lián)系人當(dāng)作客戶,那么也可以運用 RFM 分析模型,管理我們的重要人脈資源,按照最近聯(lián)系時間間隔 R、聯(lián)系次數(shù) F、聯(lián)系深度 M 進(jìn)行分類,我們可以重點關(guān)注前 4 類人:
1重要價值的人:聯(lián)系多間隔短,包括親密的家人、很好的朋友、重要的客戶、領(lǐng)導(dǎo)、同事等,與他們保持良好的關(guān)系。
2重要發(fā)展的人:聯(lián)系少間隔短,包括聯(lián)系次數(shù)不多的朋友等,增加與他們的互動,增進(jìn)感情。
3重要保持的人:聯(lián)系多間隔長,包括很久沒有聯(lián)系過的朋友等,跟他們主動聯(lián)絡(luò),保持溝通。
4重要挽留的人:聯(lián)系少間隔短,包括聯(lián)系次數(shù)不多,且很久沒有聯(lián)系過的朋友等,分析疏遠(yuǎn)的原因,并想辦法努力挽回。

保持對愛的熱忱,學(xué)會關(guān)心那些對你很重要的人,不要讓他們變成像陌生的路人一樣。
小結(jié)
RFM 分析模型,是一種客戶細(xì)分的技術(shù),原理簡單易懂,幾乎不用任何專業(yè)的知識,就能快速對客戶進(jìn)行分類,并針對不同類型的客戶,制定差異化的營銷策略,從而做出更加明智的決策,這反過來又能提升客戶的忠誠度。
RFM 分析模型實現(xiàn)起來也很方便,用 Excel 就可以做,用 Python 也能做,其他分析工具基本也都可以做。
學(xué)習(xí) RFM 分析模型,我得到的一點啟發(fā)是:要重點維護(hù)好那些對自己很重要的人,這比學(xué)會用 Python 建模更重要。

點擊??鏈接

