中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

教你用幾行Python和消費(fèi)數(shù)據(jù)做客戶細(xì)分

2018-10-31    來源:raincent

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬Linux鏡像隨意使用

 

編譯:張秋玥、羅然、云舟

細(xì)分客戶群是向客戶提供個(gè)性化體驗(yàn)的關(guān)鍵。它可以提供關(guān)于客戶行為、習(xí)慣與偏好的相關(guān)信息,幫助企業(yè)提供量身定制的營銷活動(dòng)從而改善客戶體驗(yàn)。在業(yè)界人們往往把他吹噓成提高收入的萬能藥,但實(shí)際上這個(gè)操作并不復(fù)雜,本文就將帶你用簡單的代碼實(shí)現(xiàn)這一項(xiàng)目。

 

 

客戶細(xì)分

我們需要?jiǎng)?chuàng)建什么?

通過使用消費(fèi)交易數(shù)據(jù),我們將會(huì)通過創(chuàng)建一個(gè)2 x 2的有價(jià)值屬性的矩陣來得到4個(gè)客戶群。每一個(gè)客戶群將與其他群體有兩大區(qū)別,即當(dāng)前客戶價(jià)值和潛在客戶價(jià)值。

我們將使用什么技術(shù)?

我們將使用RFM模型從消費(fèi)交易數(shù)據(jù)中創(chuàng)建所需變量。RFM模型代表:

• 最近消費(fèi)(Recency):他們最近一次消費(fèi)是什么時(shí)候?

• 消費(fèi)頻率(Frequency):他們多久消費(fèi)一次、一次消費(fèi)多久?

• 消費(fèi)金額(Monetary):他們消費(fèi)了多少?

該模型通常被用于在三個(gè)屬性交叉處尋找高價(jià)值客戶。但在本例中,我們將僅適用R(最近消費(fèi))與M(消費(fèi)金額)來創(chuàng)建二維矩陣。

 

 

RFM模型

我們使用什么數(shù)據(jù)?

我們將使用Tableau提供的消費(fèi)數(shù)據(jù)樣本——它也被稱為“Global Superstore”。它通常被用于預(yù)測(cè)與時(shí)間序列分析。該數(shù)據(jù)集包含超過1500位不同客戶4年的消費(fèi)數(shù)據(jù)。既然我們做的是行為細(xì)分而非人口細(xì)分,我們將通過僅選擇B2C領(lǐng)域的消費(fèi)者以及美國區(qū)域的消費(fèi)數(shù)據(jù)來去除潛在的人口偏差。

我們采取什么方法?

第0步:導(dǎo)入、篩選、清理、合并消費(fèi)者層級(jí)數(shù)據(jù)。

第1步:為每一位消費(fèi)者創(chuàng)建RFM變量。

第2步:為實(shí)現(xiàn)自動(dòng)細(xì)分,我們將使用R與M變量的80%分位數(shù);我們其實(shí)還可以用k均值聚類(K-mean Clustering)或者利用商業(yè)背景知識(shí)來進(jìn)行群體區(qū)分——比如,全球超市企業(yè)用戶將活躍客戶定義為最近一次訂單在100天內(nèi)的客戶。

第3步:計(jì)算RM分?jǐn)?shù),并對(duì)客戶進(jìn)行排序。

第4步:可視化價(jià)值矩陣,并對(duì)關(guān)鍵指標(biāo)進(jìn)行進(jìn)一步分析。

Python實(shí)現(xiàn):

第0步:導(dǎo)入、篩選、清理、合并消費(fèi)者層級(jí)數(shù)據(jù)。

import matplotlib as plt
import numpy as np
%matplotlib inline
import warnings
warnings.filterwarnings('ignore')
import pandas as pd
url = 'https://github.com/tristanga/Data-Analysis/raw/master/Global%20Superstore.xls'
df = pd.read_excel(url)
df = df[(df.Segment == 'Consumer') & (df.Country == 'United States')]
df.head()

第1步:為每一位消費(fèi)者創(chuàng)建RFM變量。

df_RFM = df.groupby('Customer ID').agg({'Order Date': lambda y: (df['Order Date'].max().date() - y.max().date()).days,
'Order ID': lambda y: len(y.unique()),
'Sales': lambda y: round(y.sum(),2)})
df_RFM.columns = ['Recency', 'Frequency', 'Monetary']
df_RFM = df_RFM.sort_values('Monetary', ascending=False)
df_RFM.head()

 

 

第2步:使用R與M變量的80%分位數(shù)實(shí)現(xiàn)自動(dòng)細(xì)分。

# We will use the 80% quantile for each feature
quantiles = df_RFM.quantile(q=[0.8])
print(quantiles)
df_RFM['R']=np.where(df_RFM['Recency']<=int(quantiles.Recency.values), 2, 1)
df_RFM['F']=np.where(df_RFM['Frequency']>=int(quantiles.Frequency.values), 2, 1)
df_RFM['M']=np.where(df_RFM['Monetary']>=int(quantiles.Monetary.values), 2, 1)
df_RFM.head()

 

 

第3步:計(jì)算RM分?jǐn)?shù),并對(duì)客戶進(jìn)行排序。

# To do the 2 x 2 matrix we will only use Recency & Monetary
df_RFM['RMScore'] = df_RFM.M.map(str)+df_RFM.R.map(str)
df_RFM = df_RFM.reset_index()
df_RFM_SUM = df_RFM.groupby('RMScore').agg({'Customer ID': lambda y: len(y.unique()),
'Frequency': lambda y: round(y.mean(),0),
'Recency': lambda y: round(y.mean(),0),
'R': lambda y: round(y.mean(),0),
'M': lambda y: round(y.mean(),0),
'Monetary': lambda y: round(y.mean(),0)})
df_RFM_SUM = df_RFM_SUM.sort_values('RMScore', ascending=False)
df_RFM_SUM.head()

 

 

第4步:可視化價(jià)值矩陣,并對(duì)關(guān)鍵指標(biāo)進(jìn)行進(jìn)一步分析。

# 1) Average Monetary Matrix
df_RFM_M = df_RFM_SUM.pivot(index='M', columns='R', values='Monetary')
df_RFM_M= df_RFM_M.reset_index().sort_values(['M'], ascending = False).set_index(['M'])
df_RFM_M

# 2) Number of Customer Matrix
df_RFM_C = df_RFM_SUM.pivot(index='M', columns='R', values='Customer ID')
df_RFM_C= df_RFM_C.reset_index().sort_values(['M'], ascending = False).set_index(['M'])
df_RFM_C

# 3) Recency Matrix

 

 

 

 

 

最終矩陣(左上:流失客戶;右上:明星客戶;左下:次要客戶;右下:新客戶)

一些簡單的銷售與營銷策略的啟發(fā)性實(shí)例

“流失客戶”分類中的客戶人數(shù)不是很多,并且從他們身上得到的的平均收入高于“明星客戶”分類。既然人數(shù)不多,從客戶層面與業(yè)務(wù)部門合作對(duì)這些客戶進(jìn)行分析研究并制定一個(gè)留住他們的策略應(yīng)該不難:給他們打電話或者直接見面,說不定就可以把他們挪到“明星客戶”分類(例如,高參與度客戶)。

“次要客戶”分類的平均最近消費(fèi)時(shí)間非常久遠(yuǎn)(超過1年,而參與度較高的客戶平均來說該數(shù)據(jù)只有60至70天)。發(fā)起一些發(fā)放優(yōu)惠券一類的營銷活動(dòng)可能能夠帶來新的消費(fèi),并幫助把該類客戶挪至“新客戶”分類(例如,高參與度客戶)。

 

 

簡單策略實(shí)例(上:打電話;下:電郵營銷)

在Github上可以找到本Jupyter Notebook

https://github.com/tristanga/Data-Analysis/blob/master/Notebooks/Automatic Customer Segmentation with RFM %28Python%29.ipynb

相關(guān)報(bào)道:

https://towardsdatascience.com/how-to-automatically-segment-customers-using-purchase-data-and-a-few-lines-of-python-36939fb587a4

標(biāo)簽: b2c isp 代碼 優(yōu)惠

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:爬數(shù)據(jù)展示國內(nèi)Go的市場(chǎng)行情到底如何?平均年薪46萬?

下一篇:正在被巨大數(shù)據(jù)中心吞噬的全球電力,谷歌臉書和比特幣的“源”罪