一步一步教你PowerBI数据分析:制作客户RFM数据分析
客户分析就是根据客户信息数据来分析客户特征,评估客户价值,从而为客户制订相应的营销策略与资源配置。通过合理、系统的客户分析,企业可以知道不同的客户有着什么样的需求,分析客户消费特征与商务效益的关系,使运营策略得到最优的规划;更为重要的是可以发现潜在客户,从而进一步扩大商业规模,使企业得到快速的发展。
企业客户分析可以从以下几个方面入手,对客户数据信息展开分析:
1、分析客户个性化需求
“以客户为中心”的个性化服务越来越受到重视。实施CRM的一个重要目标就是能够分析出客户的个性化需求,并对这种需求采取相应措施,同时分析不同客户对企业效益的不同影响,以便做出正确的决策。这些都使得客户分析成为企业实施CRM时不可缺少的组成部分。
2、分析客户行为
企业可以利用收集到的信息,跟踪并分析每一个客户的信息,不仅知道什么样的客户有什么样的需求,同时还能观察和分析客户行为对企业收益的影响,使企业与客户的关系及企业利润得到最优化。
3、分析有价值的信息
利用客户分析系统,企业不再只依靠经验来推测,而是利用科学的手段和方法,收集、分析和利用各种客户信息,从而轻松的获得有价值的信息。如企业的哪些产品最受欢迎,原因是什么,有什么回头客,哪些客户是最赚钱的客户,售后服务有哪些问题等。客户分析将帮助 企业充分利用其客户关系资源,在新经济时代从容自由地面对客户。
目前国内企业对客户的分析还很欠缺,分析手段较为简单,而简单的统计方法虽然可以在一定程度上得出分析结果,但因为不同企业发展中存在一定的不平衡性,利用简单的统计模式得出的结论容易有较大的误差,难以满足企业的特殊需求。因而企业需要有更加完善、合理的客户分析方案,进一步提高客户分析的合理性、一致性,并能在对 潜在客户的培养和发现中提供更多的决策支持。
本文将使用客户RFM模型来衡量客户价值,当然仅一个模型也无法完整并系统的分析客户,还是需要结合CRM系统中的数据,切勿过度依赖该模型来分析客户价值。该模型仅供决策参考。接下来我们来看一下RFM模型是什么?

RFM分析(Recency,Frequency,Monetary)是用来细分用户和衡量客户价值的一个重要工具,就是根据客户活跃程度和交易金额的贡献,进行客户价值细分的一种方法。
RFM的含义:
R(Recency):客户最近一次交易时间的间隔。R值越大,表示客户交易发生的日期越久,反之则表示客户交易发生的日期越近。
F(Frequency):客户在最近一段时间内交易的次数。F值越大,表示客户交易越频繁,反之则表示客户交易不够活跃。
M(Monetary):客户在最近一段时间内交易的金额。M值越大,表示客户价值越高,反之则表示客户价值越低。
本文中通过分析某个店铺客户消费数据,将会员分为以下8种,以便有针对性的做营销决策,实现精细化运营:

一、RFM数据源
我们准备的数据源中有很多的字段,由RFM模型的含义可知。我们需要通过订单日期判断R值,订单ID判断F值,销售额判断M值,客户ID是基础数据,其他的字段就是冗余字段

二、RFM值
1、确定R值
确定R值为指定日期和最近购买日期之间的差异天数,计算每个客户的最近一次消费日期。再根据截止日期的时间和最后一个交易日期的差值
RFM R =
AVERAGEX( DISTINCT('维度_客户'[客户名称]) ,
CALCULATE(
AVERAGEX( '事实_订单', DATEDIFF( [订单日期] , LASTDATE( '维度_RFM日期'[Date] ) , DAY ) ) ,
TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期])
)
)
R最大值
RFM R MAX =
MAXX( ALL('维度_客户'[客户名称]) ,
CALCULATE(
AVERAGEX( '事实_订单' , DATEDIFF( [订单日期] , LASTDATE( '维度_RFM日期'[Date] ) , DAY ) ) ,
TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期])
)
)
R最小值
RFM R MIN =
MINX( ALL( '维度_客户'[客户名称]) ,
CALCULATE(
AVERAGEX( '事实_订单' , DATEDIFF( [订单日期] , LASTDATE( '维度_RFM日期'[Date] ) , DAY ) ) ,
TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期] )
)
R平均值
RFM R AVG = CALCULATE( [RFM R] , ALL('维度_客户') )
2、确定F值
交易次数值需要感觉非重复计数获得,这里根据虚拟关系筛选计数顾客交易次数
RFM F =
AVERAGEX( DISTINCT('维度_客户'[客户名称]) ,
CALCULATE('度量值'[顾客交易次数] , TREATAS( VALUES('维度_RFM日期'[Date]) , '事实_订单'[订单日期]))
)
F最大值
RFM F MAX =
MAXX( ALL('维度_客户'[客户名称]) ,
CALCULATE('度量值'[顾客交易次数] , TREATAS( VALUES('维度_RFM日期'[Date]) , '事实_订单'[订单日期]))
)
F最小值
RFM F MIN = MINX( ALL('维度_客户'[客户名称]) , CALCULATE('度量值'[顾客交易次数] , TREATAS( VALUES('维度_RFM日期'[Date]) , '事实_订单'[订单日期])))
F平均值
RFM F AVG = CALCULATE( [RFM F] , ALL('维度_客户') )
3、确定M值
M值为每个客户共享的销售金额
RFM M = AVERAGEX( DISTINCT( '维度_客户'[客户名称]) , CALCULATE('度量值'[销售金额], TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期] ) ))
M最大值
RFM M MAX = MAXX( ALL( '维度_客户'[客户名称]) , CALCULATE('度量值'[销售金额], TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期] ) ))
M最小值
RFM M MIN = MINX( ALL('维度_客户'[客户名称]) , CALCULATE('度量值'[销售金额], TREATAS( VALUES( '维度_RFM日期'[Date] ) , '事实_订单'[订单日期]) ))
M平均值
RFM M AVG = CALCULATE( [RFM M] , ALL( '维度_客户' ) )
三、确定客户类型
确定RFM值后,我们将R、F、M分别与平均值比较,计数出RFM的得分情况
RFM R 分数 = IF( NOT ISBLANK( [RFM R] ) , DIVIDE( [RFM R MAX] - [RFM R] , [RFM R MAX] - [RFM R MIN] ) * 100 )
RFM F 分数 = IF( NOT ISBLANK( [RFM F] ) , DIVIDE( [RFM F] - [RFM F MIN] , [RFM F MAX] - [RFM F MIN] ) * 100 )
RFM M 分数 = IF( NOT ISBLANK( [RFM M] ) , DIVIDE( [RFM M] - [RFM M MIN] , [RFM M MAX] - [RFM M MIN] ) * 100 )
四、新建辅助表
1、新建RFM分类表
可以直接输入数据,也可以通过Excel导入数据。

2、新建权重参数表
权重参数从0到100进行设定
参数_RFM R权重 = GENERATESERIES(0, 100, 1)
参数_RFM F权重 = GENERATESERIES(0, 100, 1)
参数_RFM M权重 = GENERATESERIES(0, 100, 1)
3、新建TOP参数表
参数_RFM TOP X = GENERATESERIES(0, 100, 1)
五、制作可视化报告
1、制作表格,拖放已经计算好的数据

2、制作客户RFM权重占比环形图

3、制作客户分类占比环形图

4、制作客户RFM得分排名条形图

5、制作切片器
切片器拖放辅助表中的权重R\F\M字段和TopX字段,并设置显示格式为下拉。日期切片器直接设置开启滑块

六、总结
客户RFM分析首先需要根据订单数据来计算RFM的值,其次通过辅助表进行补充动态设定的参数。再次通过RFM的值和最大值、最小值对比使用平均函数进行计算出RFM得分情况。通过辅助表客户分类维度,来确定客户所属分类。该模型可以动态根据企业对R,F,M设定不同的权重来计算客户的价值。
对于销售分析的指标的分析模型还有动态ABC分析模型,在后续得文章中会给大家展现。

一步一步教你PowerBI数据分析:制作客户RFM数据分析的更多相关文章
- 一步一步教你PowerBI利用爬虫获取天气数据分析
对于爬虫大家应该不会陌生,我们首先来看一下爬虫的定义:网络爬虫是一种自动获取网页内容的程序,是搜索引擎的重要组成部分.网络爬虫为搜索引擎从万维网下载网页,自动获取网页内容的应用程序.看到定义我们应该已 ...
- 使用Python一步一步地来进行数据分析总结
原文链接:Step by step approach to perform data analysis using Python译文链接:使用Python一步一步地来进行数据分析--By Michae ...
- 一步一步教你如何在linux下配置apache+tomcat(转)
一步一步教你如何在linux下配置apache+tomcat 一.安装前准备. 1. 所有组件都安装到/usr/local/e789目录下 2. 解压缩命令:tar —vxzf 文件名(. ...
- 一步一步教你将普通的wifi路由器变为智能广告路由器
一步一步教你将普通的wifi路由器变为智能广告路由器 相信大家对WiFi智能广告路由器已经不再陌生了,现在很多公共WiFi上网,都需要登录并且验证,这也就是WiFi广告路由器的最重要的功能.大致就是下 ...
- 一步一步教你使用Git
一步一步教你使用Git 互联网给我们带来方便的同时,也时常让我们感到困惑.随便搜搜就出一大堆结果,然而总是有大量的重复和错误.小妖发出的内容,都是自己实测过的,有问题请留言. 现在,你已经安装了Git ...
- 使用WPF教你一步一步实现连连看
使用WPF教你一步一步实现连连看(一) 第一步: 问题,怎样动态的建立一个10*10的grid(布局) for (int i = 0; i < 10; i++){ RowDefinition r ...
- 一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app
一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app 转载 作者:jrainlau 链接:https://segmentfault.com/a/1190000005844155 ...
- Ace教你一步一步做Android新闻客户端(一)
复制粘贴了那么多博文很不好意思没点自己原创的也说不出去,现在写一篇一步一步教你做安卓新闻客户端,借此机会也是让自己把相关的技术再复习一遍,大神莫笑,专门做给新手看. 手里存了两篇,一个包括软件视图 和 ...
- 一步一步教你实现iOS音频频谱动画(二)
如果你想先看看最终效果再决定看不看文章 -> bilibili 示例代码下载 第一篇:一步一步教你实现iOS音频频谱动画(一) 本文是系列文章中的第二篇,上篇讲述了音频播放和频谱数据计算,本篇讲 ...
随机推荐
- 03-css3中的3D转换
一.CSS3-3D转换 1.3D 特点:近大远小,物体和面遮挡不可见 1.1三维坐标系 x 轴:水平向右 -- x 轴右边是正值,左边是负值 y 轴:垂直向下 -- y 轴下面是正值,上面是负值 z ...
- centos7用户管理及root忘记密码恢复
查看用户相关命令:#id 用户和组的信息#whoami #查看当前有效用户名#who #显示目前登入系统的用户信息.#w # w 命令用于显示已经登陆系统的用户列表#users #用于显示当前登录系统 ...
- stand up meeting 12-2
今天因为各位组员组里项目原因没有集中在一起进行stand up meeting.但是士杰和天赋国庆分别对项目进度和前后端的结合进行的沟通. 针对后端部分,天赋完成了GetRankingData API ...
- Gitflow分支管理策略
Gitflow存在两个记录项目历史的分支 Master分支:存储(官方的,正式的)项目发布历史记录的分支. develop分支:充当功能的集成分支. Develop分支将包含项目的完整历史记录,而ma ...
- sublime查看项目代码多少行
---------------------sublime 0.右击要查找的文件; 1.勾选正则( .* ); 3.输入正则表达式 ^[ \t]*[^ \t\n\r]+.*$ 0:搜索 \n 是不是 ...
- SpringBoot word 转换为 pdf
转换文件 swagger 地址, 基于 SpringBoot 开发 http://119.27.167.41:8888/convertor/swagger-ui.html 带有图片的word 转换体验 ...
- beego微信网页授权
beego.Get("MP_verify_Rj3QAbcdU0MRsyS.txt", func(context *context.Context) { context.Respon ...
- SQLI-LABS学习笔记(二)
逼话少说,如有错误,烦请指出,谢谢 这两天生病,效率很低 第5关 打开页面 发现跟前几题不同,没有直接返回数据.. 加个单引号 You have an error in your SQL syntax ...
- 日志分析工具ELK(五)
八.Kibana实践 选择绝对时间和相对时间 搜索 还可以添加相关信息 自动刷新页面时间,也可以关闭 创建图像,可视化 编辑Markdown,创建一个值班联系表 值班联系表 保存 再创建一个饼图;查看 ...
- 设计数据库 ER 图太麻烦?不妨试试这两款工具,自动生成数据库 ER 图!!!
忙,真忙 点赞再看,养成习惯,微信搜索『程序通事』,关注就完事了! 点击查看更多精彩的文章 这两个星期真是巨忙,年前有个项目因为各种莫名原因,一直拖到这个月才开始真正测试.然后上周又接到新需求,马不停 ...