项目背景
在面向客户制定运营策略、营销策略时,我们希望针对不同的客户推行不同的策略,实现精准化运营,以期获取最大的转化率。精准化运营的前提是客户分类。通过客户分类,对客户群体进行细分,区别出低价值客户、高价值客户,对不同的客户群体开展不同的个性化服务,将有限的资源合理地分配给不同价值的客户,实现效益最大化。在客户分类中,RFM模型是一个经典的分类模型,模型利用通用交易环节中最核心的三个维度——最近消费(Recency)、消费频率(Frequency)、消费金额(Monetary)细分客户群体,从而分析不同群体的客户价值。
项目目标
本项目借助某电商客户数据,探讨如何对客户群体进行细分,以及细分后如何利用RFM模型对客户价值进行分析。在本项目中,主要希望实现以下三个目标:1.借助某电商客户数据,对客户进行群体分类;2.比较各细分群体的客户价值;3.对不同价值的客户制定相应的运营策略。
分析过程
1.数据预览
我们的源数据是订单表,记录着用户交易相关字段
通过数据可以发现,订单状态有交易成功和退款关闭的,检查是否还有其他情况
只有这两种情况,后续清洗中需剔除退款订单。然后观察数据类型与缺失情况
订单一共28833行,没有缺失,付款日期是时间格式,实付金额、邮费和购买数量是数值型,其他均为字符串类型
2.数据清洗
(1)剔除退款
(2)关键字段提取:提取RFM模型所需要的买家昵称,付款时间,实付金额
(3)关键字段构造:构建模型所需的三个字段,R(最近一次购买时间间隔),F(购买频次),M(平均或累计购买金额)
首先构造R值,思路是按买家昵称分组,选取付款日期最大值
为了得到最终的R值,用今天减去每位用户最近一次付款时间,就得到R值了,这份订单是7月1日生成的,所以这里我们把“2019-7-1”当作“今天”
然后处理F,即每个用户累计购买频次(明确一下单个用户一天内购买多次订单合并为一次订单)
思路:引入一个精确到天的日期标签,依照“买家昵称”和“日期标签”分组,把每个用户一天内的多次下单合并,再统计购买次数
最后处理M,本案例M指用户平均支付金额,可以通过总金额除以购买频次计算出来
三个指标合并
3.维度打分
维度确认的核心是分值确定。RFM模型中打分一般采取5分制,依据数据和业务的理解,进行分值的划分
R值依据行业经验,设置为30天一个跨度,区间左闭右开
F值和购买频次挂钩,每多购买一次,分值多加一分
M值我们按照50元的一个区间来进行划分
这一步我们确定了一个打分框架,每一个用户的每个指标,都有其对应的分值
4.分值计算
(1)算出每个用户的R,F,M分值
(2)简化分类结果
通过判断每个客户的R,F,M值是否大于平均值,来简化分类结果。0表示小于平均值,1表示大于平均值,整体组合下来有8个分组
5.客户分层
RFM经典分层按照R,F,M每一项指标是否高于平均值,把用户划分为8类
Python实现思路如下:先定义一个人群数值,将之前判断的R,F,M是否大于均值的三个值加起来
人群数值是数值类型,位于前面的0会自动略过,比如1代表001的高消费唤回客户人群,10对应010的一般客户
然后在python中定义一个判断函数,通过判断人群数值,来返回对应的分类标签
数据解读与建议:
首先查看各类用户占比情况
然后查看不同类型客户消费金额贡献占比
最后导出数据,在tableau中数据可视化展示
通过数据可视化后,我们可以发现:
1.客户流失情况严重,高消费唤回客户,流失客户占比超过总客户的50%
2.高消费唤回客户和频次深耕客户的金额总占比约66%,这两部分客户是消费的重点客户
3.流失客户和新客户的总人数占比约38%,但金额总占比只有约13%
建议:
1.针对高消费唤回客户,流失客户采用唤回策略,推送相关信息,发礼品券等挽留客户
2.针对高消费唤回客户和频次深耕客户,考虑继续挖掘其消费特性,如喜爱购买的产品,消费的时间段,后续据此加强店铺产品与时间段的改进,最大程度留住这两部分客户
3.针对流失客户和新客户金额总占比低,建议推出一些低价产品,用来拉取新客户,保证店铺的活跃性。