一、原理:RFM分析
(一)概念
RFM模型衡量当前客户价值和客户潜在价值的重要工具和手段。通过一个客户的近期购买行为、购买的总体频率以及花了多少钱三个维度来描述该客户价值状况的客户分类模型。
(二)分析维度
- R(近度),是指客户的最近一次消费时间,用最通俗的话说就是,客户最后一次消费时间距今天(或指定时间)有多长时间了,这个指标与客户流失和复购直接相关。
- F(消费次数),是指客户下单频率,通俗一点儿就是,客户在分析的周期内消费了几次。这个指标反映了客户的消费活跃度。
- M(消费金额),是指客户消费金额,其实就是客户在分析的周期内在终端花了多少钱,直接反映了客户对终端贡献的价值。
(三)客户类型及策略
将R近度、F消费次数、M消费金额,以分析周期内的平均值为界各划分为两个层次。
将R、F、M进行组合,可以得到8种客户类型:
二、数据源
(一)表1《会员销售记录》
根据终端云Pos系统导出的《8~10月销售单据》和《会员名单》,得到表1《8~10月会员销售记录》。
(二)表2《RFM客户分类》
三、可视化呈现
(一)《单一周期消费分员客户价值RFM分析》
- 显示单一周期内,各客户类型消费会员数量及数量占比
- 查询某一客户类型消费会员RFM信息
(二)《多个周期消费会员客户价值RFM分析》
- 显示不同周期消费会员数量、R近度平均值、F消费次数平均值、M消费金额平均值
- 显示不同周期各客户类型消费会员数量
- 显示不同周共用各客户类型消费会员数量变化情况
- 查询某一客户类型在不同周期的消费会员RFM信息
四、实操步骤
(一)步骤一:数据获取与数据整理
- 表1《8~10月会员销售记录》
- 表2《RFM客户分类》
(二)步骤二:新建表《按订单汇总》
表《按订单汇总》
1.新建表
- 按订单汇总 = SUMMARIZE('表1-会员销售记录','表1-会员销售记录'[流水号],'表1-会员销售记录'[日期],'表1-会员销售记录'[会员姓名],'表1-会员销售记录'[会员手机],"金额",SUM('表1-会员销售记录'[金额]))
2.新建列
- 近度(天) = DATE(2022,11,1)-'按订单汇总'[日期].[Date]
- 月近度(天) = DATE(2022,'按订单汇总'[日期].[MonthNo]+1,1)-'按订单汇总'[日期].[Date]
- 月份 = '按订单汇总'[日期].[MonthNo] & "月"
- 月份编号 = '按订单汇总'[日期].[MonthNo]
(三)步骤三:8~10月客户价值RFM分析---数据建模
表《8~10月RFM分析》
建立关系
1.新建表《8~10月RFM分析》
- 8~10月RFM分析 = SUMMARIZE('按订单汇总','按订单汇总'[会员姓名],'按订单汇总'[会员手机],“R近度(天)",MIN('按订单汇总'[近度(天)]))
2.计算“R”
- 新建度量值存储表,主页-数据-输入数据-《表0-度量值》
- 新建度量值,R近度平均值 = AVERAGEX(ALL('8~10月RFM分析'),'8~10月RFM分析'[R近度(天)])
- 新建列,R = IF('8~10月RFM分析'[R近度(天)]<'表0-度量值'[R近度平均值],1,0)
3.计算“F”
- 新建列,F消费次数(次) = COUNTROWS(FILTER('按订单汇总','按订单汇总'[会员手机]='8~10月RFM分析'[会员手机]))
- 新建度量值,F消费次数平均值 = AVERAGEX(ALL('8~10月RFM分析'),'8~10月RFM分析'[F消费次数(次)])
- 新建列,F = IF('8~10月RFM分析'[F消费次数(次)]>'表0-度量值'[F消费次数平均值],1,0)
4.计算“M”
- 新建列,M消费金额(元) = SUMX(FILTER('按订单汇总','按订单汇总'[会员手机]='8~10月RFM分析'[会员手机]),'按订单汇总'[金额])
- 新建度量值,M消费金额平均值 = AVERAGEX(ALL('8~10月RFM分析'),'8~10月RFM分析'[M消费金额(元)])
- 新建列,M = IF('8~10月RFM分析'[M消费金额(元)]>'表0-度量值'[M消费金额平均值],1,0)
5.新建列“RFM”
- RFM = '8~10月RFM分析'[R] & '8~10月RFM分析'[F] & '8~10月RFM分析'[M]
6.建立关系
- 表“8~10月RFM分析”与表“RFM分类”,通过字段“RFM”建立关系
- 字段区,隐藏设置
(四)步骤四:8~10月消费会员客户价值RFM分析---可视化呈现
报表《XX终端8~10月消费会员客户坐RFM分析》
1.矩阵-《各客户类型消费会员数量与数量占比》
- 新建度量值,消费会员数量 = COUNT('8~10月RFM分析'[会员手机])
- 新建度量值,数量占比 = DIVIDE('表0-度量值'[消费会员数量],COUNTX(ALL('8~10月RFM分析'),'8~10月RFM分析'[会员手机]))
- 生成视觉对象-矩阵
2.堆积柱形图-《各客户类型消费会员数量》
- 生成视觉对象-堆积柱形图
3.表-《消费会员RFM信息表》
- 生成视觉对象-表
4.切片器-《客户类型》
- 生成视觉对象-切片器
5.文本框-《XX终端8~10月消费会员客户价值RFM分析》
- 插入-文本框
- 编辑交互
(五)步骤五:月消费会员客户价值RFM分析---数据建模
表《月度RFM分析》
建立关系
1.新建表《10月按订单汇总》
- 10月按订单汇总 = FILTER('按订单汇总','按订单汇总'[月份编号]=10)
2.新建表《10月RFM分析》
- 10月RFM分析 = SUMMARIZE('10月按订单汇总','10月按订单汇总'[月份],'10月按订单汇总'[月份编号],'10月按订单汇总'[会员姓名],'10月按订单汇总'[会员手机],"R近度(天)",MIN('10月按订单汇总'[月近度(天)]))
3.计算“R”
- 新建度量值,R近度平均值(10月) = AVERAGEX(ALL('10月RFM分析'),'10月RFM分析'[R近度(天)])
- 新建列,R = IF('10月RFM分析'[R近度(天)]<'表0-度量值'[R近度平均值(10月)],1,0)
4.计算“F”
- 新建列,F消费次数(次) = COUNTROWS(FILTER('10月按订单汇总','10月按订单汇总'[会员手机]='10月RFM分析'[会员手机]))
- 新建度量值,F消费次数平均值(10月) = AVERAGEX(ALL('10月RFM分析'),'10月RFM分析'[F消费次数(次)])
- 新建列,F = IF('10月RFM分析'[F消费次数(次)]>'表0-度量值'[F消费次数平均值(10月)],1,0)
5.计算“M”
- 新建列,M消费金额(元) = SUMX(FILTER('10月按订单汇总','10月按订单汇总'[会员手机]='10月RFM分析'[会员手机]),'10月按订单汇总'[金额])
- 新建度量值,M消费金额平均值(10月) = AVERAGEX(ALL('10月RFM分析'),'10月RFM分析'[M消费金额(元)])
- 新建列,M = IF('10月RFM分析'[M消费金额(元)]>'表0-度量值'[M消费金额平均值(10月)],1,0)
6.新建列“RFM”
- 新建列,RFM = '10月RFM分析'[R] & '10月RFM分析'[F] & '10月RFM分析'[M]
7.重复以上步骤,完成《9月RFM分析》、《8月RFM分析》
8.新建表《月度RFM分析》
- 月度RFM分析=UNION(‘10月RFM分析’, ‘9月RFM分析’, ‘8月RFM分析’
9.建立关系
- 表《月度RFM分析》和表《RFM客户分类》,通过字段“RFM”建立关系
- 字段,设置隐藏
(六)步骤六:月消费会员客户价值客户价值RFM分析-可视化呈现
报表《XX终端月度消费会员RFM分析》
1.矩阵---《月度R、F、M平均值及消费会员数量》
- 新建度量值,月度消费会员数量 = COUNT('月度RFM分析'[会员手机])
- 新建度量值,月度R近度平均值 = AVERAGE('月度RFM分析'[R近度(天)])
- 新建度量值,月度F消费次数平均值 = AVERAGE('月度RFM分析'[F消费次数(次)])
- 新建度量值,月度M消费金额平均值 = AVERAGE('月度RFM分析'[M消费金额(元)])
- 生成视觉对象-矩阵
2.矩阵---《月度各类型客户消费会员数量》
- 生成视觉对象-矩阵
3.簇状柱形图---《月度各类型客户消费会员数量》
- 生成视觉对象-簇状柱形图
4.表---《月度消费会员RFM信息表》
- 生成视觉对象-表
- 设置筛选器
5.切片器---《客户类型》
- 生成视觉对象-切片器
6.插入---文本框
- 插入-文本框
- 编辑交互