1. 简介
1.1 作用
- 会员价值度用来评估用户的价值情况
- 是区分会员价值的重要模型和参考依据
- 也是衡量不同营销效果的关键指标之一
1.2 定义
- 价值度模型一般基于交易行为产生,衡量的是有实体转化价值的行为。常用的价值度模型是RFM
- RFM模型是根据会员
- 最近一次购买时间R(Recency)
- 购买频率F(Frequency)
- 购买金额M(Monetary)计算得出RFM得分
- 通过这3个维度来评估客户的订单活跃价值,常用来做客户分群或价值区分
- RFM模型基于一个固定时间点来做模型分析,不同时间计算的的RFM结果可能不一样
1.3 基本实现过程
- ①设置要做计算时的截止时间节点(例如2017-5-30),用来做基于该时间的数据选取和计算。
- ②在会员数据库中,以今天为时间界限向前推固定周期(例如1年),得到包含每个会员的会员ID、订单时间、订单金额的原始数
据集。一个会员可能会产生多条订单记录。 - ③ 数据预计算。从订单时间中找到各个会员距离截止时间节点最近的订单时间作为最近购买时间;以会员ID为维度统计每个用户
的订单数量作为购买频率;将用户多个订单的订单金额求和得到总订单金额。由此得到R、F、M三个原始数据量。 - ④ R、F、M分区。对于F和M变量来讲,值越大代表购买频率越高、订单金额越高;但对R来讲,值越小代表离截止时间节点越
近,因此值越好。对R、F、M分别使用五分位(三分位也可以,分位数越多划分得越详细)法做数据分区。需要注意的是,对于
R来讲需要倒过来划分,离截止时间越近的值划分越大。这样就得到每个用户的R、F、M三个变量的分位数值。 - ⑤ 将3个值组合或相加得到总的RFM得分。对于RFM总得分的计算有两种方式,一种是直接将3个值拼接到一起,例如RFM得分为312、333、132;另一种是直接将3个值相加求得一个新的汇总值,例如RFM得分为6、9、6。
2. 应用
2.1 Excel实现RFM划分
以某电商公司为例
- R:例如:正常新用户注册1周内交易,7天是重要的值,日用品采购周期是1个月,30天是重要的值
- F:例如:1次购买,2次购买,3次购买,4~10次,10次以上
- M:例如:客单价300,热销单品价格240 等
常见的确定RFM划分区间的套路
- 业务实际判断
- 平均值或中位数
- 二八法则
提取用户最近一次的交易时间,算出距离计算时间的差值
- 获取当前时间=TODAY()
- 计算时间间隔
根据天数长短赋予对应的R值
=IF(D2>60,1,IF(D2>30,2,IF(D2>14,3,IF(D2>7,4,5))))
- 从历史数据中取出所有用户的购买次数,根据次数多少赋予对应的F分值
=IF(E2>10,5,IF(E2>3,4,IF(E2>2,3,IF(E2>1,2,1))))
- 从历史数据中汇总,求得该用户的交易总额,根据金额大小赋予对应的M值
=IF(F2>1000,5,IF(F2>500,4,IF(F2>300,3,IF(F2>230,2,1))))
- 求出RFM的中值,例如中位数,用中值和用户的实际三值进行比较,高于中值的为高,否则为低
- 在得到不同会员的RFM之后,根据步骤⑤产生的两种结果有两种应用思路
- 思路1:基于3个维度值做用户群体划分和解读,对用户的价值度做分析
- 得分为212的会员往往购买频率较低,针对 购买频率低的客户应定期发送促销活动邮件
- 得分为321的会员虽然购买频率高但是订单金额低等,这些客户往往具有较高的购买黏性,可以考虑通过关联或搭配销售的
方式提升订单金额。
- 思路2:基于RFM的汇总得分评估所有会员的价值度价值,并可以做价值度排名。同时,该得分还可以作为输入维度与其他维度一起作为其他数据分析和挖掘模型的输入变量,为分析建模提供基础。
- 思路1:基于3个维度值做用户群体划分和解读,对用户的价值度做分析
2.2 RFM计算
1. 案例背景
- 用户价值细分是了解用户价值度的重要途径,针对交易数据分析的常用模型是RFM模型
- 业务对RFM的结果要求
- 对用户做分组
- 将每个组的用户特征概括和总结出来,便于后续精细化运营不同的客户群体,且根据不同群体做定制化或差异性的营销和关怀
- 规划目标将RFM的3个维度分别做3个区间的离散化
- 用户群体最大有3×3×3=27个
- 划分区间过多则不利于用户群体的拆分
- 区间过少则可能导致每个特征上的用户区分不显著
- 交付结果
- 给业务部门做运营的分析结果要导出为Excel文件,用于做后续分析和二次加工使用
- RFM的结果还会供其他模型的建模使用,RFM本身的结果可以作为新的局部性特征,因此数据的输出需要有本地文件和写数据库
两种方式
- 数据说明
- 选择近4年订单数据,从不同的年份对比不同时间下各个分组的绝对值变化情况,方便了解会员的波动
- 案例的输入源数据sales.xlsx
- 程序输出RFM得分数据写入本地文件sales_rfm_score.xlsx和MySQL数据库sales_rfm_score表中
2. 用到的技术点
- 通过Python代码手动实现RFM模型,主要用到的库包括
- time、numpy和pandas
- 在结果展示时使用了pyecharts的3D柱形图