精細(xì)化運(yùn)營神器:RFM用戶分層

在互聯(lián)網(wǎng)紅利逐漸消失的當(dāng)下,粗狂式的運(yùn)營已經(jīng)難以為繼,如何把有限的費(fèi)用投入到我們最精準(zhǔn)的用戶上,也就是所謂的精細(xì)化運(yùn)營,是每個公司應(yīng)該關(guān)注的問題。這其中最重要的是用戶分層,本文介紹了用戶分層的一種最常見、也最常見的方法:RFM用戶分層。

一、寫在前面

隨著互聯(lián)網(wǎng)流量紅利的逐漸消失,之前粗狂式的拓客和一刀切的用戶運(yùn)營已經(jīng)難以為繼,越來越多的公司開始意識到,只靠燒錢圈用戶、養(yǎng)用戶成本太高,因?yàn)椴皇撬械挠脩舳夹枰阒攸c(diǎn)投入,金主爸爸一定要好好維護(hù),潛力股一定要加大投入挖掘價值,而羊毛黨永遠(yuǎn)都是你應(yīng)該嚴(yán)防的對象,這就是所謂的精細(xì)化運(yùn)營,錢要花在刀刃上,要花在業(yè)務(wù)和核心用戶上。

精細(xì)化運(yùn)營講究的是千人千面,一千類用戶一千種運(yùn)營策略,所以第一步就是要把用戶進(jìn)行分類,然后才有針對性的運(yùn)營策略,而用戶分類中一種尤為重要和常用的方法就是RFM。

二、什么是RFM?

什么是RFM?RFM最早產(chǎn)生于電商領(lǐng)域,根據(jù)客戶的交易頻次和交易額衡量客戶的價值,對客戶進(jìn)行細(xì)分。

RFM是衡量客戶價值的三個維度,分別為R(Recency)交易間隔、F(Frequency)交易頻度、M(Monetary)交易金額組成。

精細(xì)化運(yùn)營神器:RFM用戶分層

R表示間隔(Recency):也就是客戶最近一次交易距今的間隔,需要注意的是,R是最近一次交易時間到現(xiàn)在的間隔,而不是最近一次的交易時間,R越大,表示客戶越久未發(fā)生交易,反之R越小,表示客戶越近有交易發(fā)生。

F表示頻次(Frequency):也就是客戶在最近一段時間內(nèi)交易的次數(shù),一般來說選取一個特定的時間段,F(xiàn)越大,表示客戶交易越頻繁,反之F越小,表示客戶不夠活躍。

M表示額度(Monetary):也在同樣的時間段內(nèi),客戶交易的金額,M越大,表示客戶價值越高,M越小,表示客戶價值越低。

有了以上3個維度的數(shù)據(jù),就可以對每個用戶按照每個維度進(jìn)行衡量,一般來說我們會選取一個合理的分值對R、F、M進(jìn)行劃分,將3個維度分別分為高、低兩類,組合下來就是8類,也就形成了8個用戶群體。

當(dāng)然你說我每個維度分成3類行不行,最終分成27個用戶群體不是更精細(xì),當(dāng)然沒問題,但是我們能不能給出27種不同的運(yùn)營方案,如果給不出,如此細(xì)分不就是自嗨么?

畢竟,分為多少個群體不重要,每個群體都要有個性化的運(yùn)營策略才重要。

下面是一張經(jīng)典RFM客戶細(xì)分模型圖,R分值、F分值和M分值三個指標(biāo)構(gòu)成了一個三維立方圖,在各自維度上,根據(jù)得分值又可以分為高、低兩個分類,分別用2、1表示,最終3個指標(biāo)兩兩組合,就構(gòu)成了8大客戶群體。

對每個用戶群體進(jìn)行定性,例如R、F、M分值高的客戶為重要價值客戶,R、F、M三個分值都低的客戶為潛在客戶,其他類型客戶可以此類推解讀。

精細(xì)化運(yùn)營神器:RFM用戶分層

三、RFM實(shí)際案例

RFM的原理到這里就講完了,是不是很簡單?確實(shí)很簡單,但是也確實(shí)很實(shí)用,在實(shí)際的工作中是如何實(shí)施這個用戶分層模型的呢?下面我們就用一個實(shí)際的案例手把手教你如何進(jìn)行RFM用戶分層。

整體來說,RFM模型實(shí)施需要以下幾個關(guān)鍵的步驟。

精細(xì)化運(yùn)營神器:RFM用戶分層

1. 數(shù)據(jù)準(zhǔn)備

下面通過一個實(shí)際的案例學(xué)習(xí)RFM分析的使用,案例是用python做的,當(dāng)然了Excel也能做,不必糾結(jié)于工具哈,首先將數(shù)據(jù)導(dǎo)入到data變量,代碼如下:

import pandas data=pandas.read_csv(‘./RFM分析.csv’,engine=’python’)

可以大致看一眼data數(shù)據(jù)的樣式,如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

可以看到,這里記錄的是客戶的每一個訂單的信息,第一列為訂單ID,第二列為客戶ID,第三列為交易日期,第四列為交易金額。

對數(shù)據(jù)進(jìn)行一下加工,根據(jù)交易日期,計(jì)算出每次交易距今的間隔天數(shù),代碼如下:

#將交易日期處理為日期數(shù)據(jù)類型

data[‘DealDateTime’]=pandas.to_datetime(data.DealDateTime,format=’%Y/%m/%d’)

#假設(shè)2015-10-1是計(jì)算當(dāng)天,求交易日期至計(jì)算當(dāng)天的距離天數(shù)

data[‘Days’]=pandas.to_datetime(‘2015-10-1’)-data[‘DealDateTime’]

#從時間距離中獲取天數(shù) data[‘Days’]=data[‘Days’].dt.days

執(zhí)行以上代碼,即可得到用戶每一次交易日期距離指定日期的天數(shù),如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

2. 計(jì)算R、F、M

用戶的明細(xì)數(shù)據(jù)準(zhǔn)備好后,接下來就可以計(jì)算每個客戶的最近交易間隔R、交易頻率F以及交易總額M,計(jì)算方法如下:

最近交易間隔R:使用CustomerID作為分組列,距離指定日期間隔天數(shù)Days作為聚合列,統(tǒng)計(jì)函數(shù)使用最小值函數(shù)min,即可得到每個客戶的最近交易間隔R。

交易頻率F:使用CustomerID作為分組列,OrderID作為聚合列,統(tǒng)計(jì)函數(shù)使用計(jì)數(shù)函數(shù)count。

交易總額M:使用CustomerID作為分組列,訂單金額Sales作為聚合列,統(tǒng)計(jì)函數(shù)使用求和函數(shù)sum。

對應(yīng)的代碼如下:

#統(tǒng)計(jì)每個客戶距離指定日期有多久沒有消費(fèi)了,即找出最小的最近消費(fèi)距離

R=data.groupby(by=[‘CustomerID’],as_index=False)[‘Days’].agg(‘min’)

#統(tǒng)計(jì)每個客戶交易的總次數(shù),即對訂單ID計(jì)數(shù)

F=data.groupby(by=[‘CustomerID’],as_index=False)[‘OrderID’].agg(‘count’)

#統(tǒng)計(jì)每個客戶交易的總額,即對每次的交易金額求和

M=data.groupby(by=[‘CustomerID’],as_index=False)[‘Sales’].agg(‘sum’)

執(zhí)行以上代碼,得到的結(jié)果如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

接下來使用merge方法,將R、F、M三個數(shù)據(jù)在客戶CustomerID維度上關(guān)聯(lián)起來,因?yàn)樗鼈儞碛泄餐牧忻谶@種情況下,on參數(shù)可以省略不寫,代碼如下:

#將R、F、M三個數(shù)據(jù)框關(guān)聯(lián),merge默認(rèn)內(nèi)連接,可省略,兩表on條件的關(guān)聯(lián)列名均為CustomerID

Data=R.merge(F).merge(M)

#修改列名 RFMData.columns=[‘CustomerID’,’R’,’F’,’M’]

執(zhí)行以上代碼,得到的結(jié)果如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

3. 計(jì)算R、F、M綜合分值

每個客戶的R、F、M數(shù)據(jù)計(jì)算好后,接下來就可以對R、F、M這三個維度進(jìn)行分組打分賦值,得到對應(yīng)的R分值、F分值、M分值。

打分標(biāo)準(zhǔn)可以按照業(yè)務(wù)經(jīng)驗(yàn)、平均值等標(biāo)準(zhǔn)進(jìn)行劃分。最好是按照業(yè)務(wù)經(jīng)驗(yàn)劃分,因?yàn)檫@里分類的的用戶是要到后面進(jìn)行精細(xì)化運(yùn)營的,可以通過已有的運(yùn)營策略反推這里的劃分閾值。

當(dāng)然,如果還沒有特別清晰的運(yùn)營策略,也可以采用平均值進(jìn)行劃分。本例將R、F、M三列分別按照各自的平均值劃分為高、低2個組,并分別賦值1分、2分。

R分值(R_S):距離指定日期越近,R_S越大,R>=平均值,R_S為1,R<平均值,R_S為2。

F分值(F_S):定義為交易頻率越高,F(xiàn)_S越大,F(xiàn)<=平均值,F(xiàn)_S為1,F(xiàn)>平均值,F(xiàn)_S為2。

M分值(M_S):定義為交易金額越高,M_S越大,M<=平均值,M_S為1,M>平均值,M_S為2。對各個用戶的RFM的數(shù)據(jù)行進(jìn)行打分賦值,代碼如下:

#判斷R列是否大于等于R列的平均值,使用loc將符合條件R_S列的值賦值為1

RFMData.loc[RFMData[‘R’]>=RFMData.R.mean,’R_S’]=1

#判斷R列是否小于R列的平均值,使用loc將符合條件R_S列的值賦值為2

RFMData.loc[RFMData[‘R’]<RFMData.R.mean,’R_S’]=2

#同R_S賦值方法,對F_S、M_S進(jìn)行賦值,但與R相反,F(xiàn)、M均為越大越好

RFMData.loc[RFMData[‘F’]<=RFMData.F.mean,’F_S’]=1

RFMData.loc[RFMData[‘F’]>RFMData.F.mean,’F_S’]=2

RFMData.loc[RFMData[‘M’]<=RFMData.M.mean,’M_S’]=1RFMData.loc[RFMData[‘M’]>RFMData.M.mean,’M_S’]=2

執(zhí)行代碼,R_S、F_S、M_S的分組分值就計(jì)算出來了,如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

基于以上得出用戶最終的RFM分層,如下圖所示。

#計(jì)算RFM綜合分值

RFMData[‘RFM’]=100*RFMData.R_S+10*RFMData.F_S+1*RFMData.M_S

執(zhí)行代碼,得到的RFM綜合分值如下圖所示。CustomerID:14568的分層為221,對應(yīng)的就是一般價值用戶。

精細(xì)化運(yùn)營神器:RFM用戶分層

4. 用戶分層

接下來結(jié)合文章開頭提到的用戶分層定義,將用戶細(xì)分為8種不同的類型。本例采用與RFM綜合分值與用戶類型的對應(yīng)關(guān)系表映射的方式實(shí)現(xiàn)用戶分層。

首先將各個RFM綜合分值與用戶類型的對應(yīng)關(guān)系定義為一個映射匹配表。

然后再使用merge中的內(nèi)連接inner方法,將RFMData與剛定義的RFM綜合分值用戶類型的映射匹配表,根據(jù)關(guān)聯(lián)列名RFM匹配合并為一個dataframe,這樣就完成了用戶分層的操作,代碼如下:

#定義RFM綜合分值與客戶類型的對應(yīng)關(guān)系表

CustomerType=pandas.DataFrame(data={‘RFM’:[111,112,121,122,211,212,221,222]’Type’:[‘潛在客戶’,’重點(diǎn)挽留客戶’,’一般保持客戶’,’重點(diǎn)保持客戶’,’一般發(fā)展客戶’,’重點(diǎn)發(fā)展客戶’,’一般價值客戶’,’高價值客戶’]})

#將RFMData與RFM綜合分值客戶類型的對應(yīng)關(guān)系表合并為一個數(shù)據(jù)框#merge默認(rèn)內(nèi)連接,可省略,兩表on條件的關(guān)聯(lián)列名均為RFM,同樣可省略 RFMData=RFMData.merge(CustomerType)

執(zhí)行代碼,得到的數(shù)據(jù)如下圖所示。

精細(xì)化運(yùn)營神器:RFM用戶分層

可以看到,最后一列數(shù)據(jù),就是對每個用戶細(xì)分的用戶分層。最后,我們來看看,每個類別的用戶數(shù)是多少,代碼如下:

#按RFM、Type進(jìn)行分組統(tǒng)計(jì)客戶數(shù)

RFMData.groupby(by=[‘RFM’,’Type’])[‘CustomerID’].agg(‘count’)

執(zhí)行代碼,就可以得到各個客戶類型的客戶數(shù)了。

精細(xì)化運(yùn)營神器:RFM用戶分層

后續(xù)就可以對不同的客戶群體,有針對性地采取相應(yīng)運(yùn)營策略進(jìn)行推廣、管理,進(jìn)而提升客戶價值和營收水平,限于篇幅,這里就不再展開,我們會在后續(xù)的用戶運(yùn)營專題上和大家繼續(xù)討論。

—— 如果覺得文章還OK,請轉(zhuǎn)發(fā) ——

特別提示:關(guān)注本專欄,別錯過行業(yè)干貨!

PS:本司承接 小紅書 / 淘寶逛逛 / 抖音 / 百度系 / 知乎 / 微博/大眾點(diǎn)評 等 全網(wǎng)各平臺推廣;

咨詢微信:139 1053 2512 (同電話)

首席增長官CGO薦讀:

更多精彩,關(guān)注:增長黑客(GrowthHK.cn)

增長黑客(Growth Hacker)是依靠技術(shù)和數(shù)據(jù)來達(dá)成各種營銷目標(biāo)的新型團(tuán)隊(duì)角色。從單線思維者時常忽略的角度和高度,梳理整合產(chǎn)品發(fā)展的因素,實(shí)現(xiàn)低成本甚至零成本帶來的有效增長…

本文經(jīng)授權(quán)發(fā)布,不代表增長黑客立場,如若轉(zhuǎn)載,請注明出處:http://allfloridahomeinspectors.com/cgo/user/44461.html

(3)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
上一篇 2021-07-22 01:15
下一篇 2021-07-22 09:02

增長黑客Growthhk.cn薦讀更多>>

發(fā)表回復(fù)

登錄后才能評論
特別提示:登陸使用搜索/分類/最新內(nèi)容推送等功能?>>