管理学中有一个重要概念那就是客户关系管理(CRM),它核心目的就是为了提高企业的核心竞争力,通过提高企业与客户间的交互,优化客户管理方式,从而实现吸引新客户、保留老客户以及将已有客户转化为忠实客户的运营机制。
从而使得我们可以有针对性的对不同用户进行个性化运营和营销。
针对上述3个维度,我们的预期:
消费频次(F)体现了客户的购买频率,那么购买频次越高,越能体现用户的消费活跃程度,因此,客户价值也就越高。
消费金额(M)这个从字面意思即可知道,用户的消费金额越高,用户的消费能力越强,那么自然用户的价值也就越高。
为了解决现存方法的缺陷,作者首次提出了将MCL、SSL和Excel是实现RFM模型的一个重要且十分直接的工具,只需要灵活使用Excel自带的函数就可以实现数据的汇总计算,得到RFM模型的三个指标值,从而将用户的价值类型提取出来,让我们有针对性的进行业务推广策略。
接下来我们给大家演示一个用Excel实现的RFM模型:
某淘宝店铺的月份销售数据
【分析目标】
根据现有订单数据,构建店铺用户价值模型,从而为后续的精细化运营不同的客户群体打下基础
【数据预处理】
数据量大概有3989条,可以在excel内处理,也可以使用python对大批量的数据进行处理。
3.1提取关键词字段:
3.2计算Recency,Monetary,Frequency
Monetary:对总金额下的客户不同消费进行平均值运算,即可获得该客户的M值
3.3客户RFM模型建立
计算完客户的R、F、M值后,接下来就可以实现客户RFM模型的评估了。
【简单实现】
此时可以先计算出来R、F、M三个值的平均值,然后对客户的每个维度与该维度的平均值进行比较,如果超出平均值就是高,否则就是低。
然后将三列字段通过’&’连接符链接起来,生成RFM辅助列。
然后通过我们预先准备好的价值模型参考表,生成用户价值模型。
最后通过excel的vlookup函数提取客户类型字段到计算表中,就实现了我们的最终结果。
【计分法】
通过用户的R、F、M值与对应值的极差(最大值与最小值的差),来确定R-Score,F-Score,M-Score。
因此首先计算R、F、M的最大值、最小值、极差三等分距
最大值:通过“=max(B5:B1204)”计算,(计算F时B换成C,M时B换成D即可)
最小值:通过“=min(B5:B1204)”计算(计算F时B换成C,M时B换成D即可)
极差:通过“=(F1-F2)/3”计算(计算F时F换成G,M时F换成H即可)
R-Score计算方式:在E5单元格输入:
“=IF(ROUNDUP((B5-$F$2)/$F$3,0)=0,1,ROUNDUP((B5-$F$2)/$F$3,0))”
F-score和M-score计算方式类似:
“=IF(ROUNDUP((C5-$G$2)/$G$3,0)=0,1,ROUNDUP((C5-$G$2)/$G$3,0))”
“=IF(ROUNDUP((D5-$H$2)/$H$3,0)=0,1,ROUNDUP((D5-$H$2)/$H$3,0))”
RFM-Score计算采用将R、F、M以百分位、十分位、个位组成三位数的方式实现,共有3*3*3=27种组合方式。
H5单元格的公式:“=E5*100+F5*10+G5”
下拉填充柄应用于整个列表,得到最后结果:
然后对数据表区域A4到H3996进行数据透视:汇总不同的RFM-Score对应的客户群体。
可以采用数据条的方式直观显示客户分布情况。
4.1熟悉数据源
常用于初步了解数据的方法有很多比如:shape(了解数据的大小,几行几列),head(显示其中的前几条数据),tail(显示数据源最后几条数据),sample(随机提取几条数据),info(显示数据源的各字段数据类型),describe(对数据源进行数学描述)。
显示结果如下:
通过上图我们发现交易记录里面会有一些无效订单,那么我们首先就要排除这类订单,那么就可以通过pandas的布尔索引来进行数据的筛选:
结果如下:
4.2选取字段
缺失值处理:
4.3RFM建模:
A.计算R值
运行结果如下:
B.计算R、F、M值
通过聚合函数,对买家昵称进行计数运算获得消费频次F值,计算天数字段的最小值获得客户的R值,通过实付金额的求和运算获得客户的M值。
C.用户价值评分
通过上述计算,我们可以根据不同的分数段来对客户R、F、M值进行打分,就本案例来讲:
R值:我们得出的最小值是660,以30天作为间隔,660-690天,打5分;690-720,打4分;720-750打3分;750-780打2分;>780,打1分。
依据上述标准建立程序方法:
运行结果:
D.用户标签设定:
第一步:计算用户R、F、M平均值:
运行结果
第二步:验证用户各项指标是否超出平均值,是则计一分,否则不计分。
第三步:生成用户标签列:
E.可视化呈现:
柱状图:
通过以上数据分析工具的分析,我们可以发现在实现RFM模型的方法中,Python具有更为强大的可用性和灵活性,且拥有完备的数据分析手段,从数据预处理、分析到最后的数据呈现。