数据分析八大模型:详解RFM模型

article/2025/10/22 21:18:16

大家好,我是爱学习的小xiong熊妹。

今天跟大家分享的是一个经常被提及,但是价值被严重低估的模型:RFM模型。

一、RFM的基本思路

RFM模型由三个基础指标组成:

  • R:最近一次消费至今的时间

  • F:一定时间内重复消费频率

  • M:一定时间内累计消费金额

RFM模型里,三个变量的含义是很具体的:

  • M:消费越多,用户价值越高,越应该重点关注。

  • R:离得越远,用户越有流失可能,越应该唤醒用户。

  • F:频次越低,越需要用一次性手段(比如促销、赠礼),频次越高,越可以用持续性手段(积分) 来维护

因此RFM能直接从数据推导出行动建议,是一种非常好用的办法。

二、RFM的小例子

一起来看个具体例子:某个打车出行APP,已按RFM格式,统计好用户数据(如下图,仅为示例数据100条),现领导要求:分析分析用户情况。要怎么分析呢?

第一步:先看M。区分用户价值是第一位的,先认清谁是大客户,谁是小客户,后边工作思路才清晰。我们可以用十分位法,简单地对用户分层,看哪些是大客户(如下图)。

分好组以后,可以打开数据透视表,看一下每组的消费占比。

哇!第一组用户就贡献了40%+的消费,前三组合起来,共30%的用户贡献额74%的消费,真是大客户呢,因此可以分类如下:

  • 第一组:VIP3(最高级VIP)

  • 第二组、第三组:VIP2(每组消费占整体大于10%)

  • 第四、第五组:VIP1(每组消费占整体大于5%,小于10%)

  • 剩下5组:VIP0(单组消费占整体不足5%)

这里可以用一个IF语句,来做好分类(如下图)。

分类完以后可以观察每组的消费门槛在哪里,比如第一组的门槛是798元/月。在运营制定策略的时候,很有可能为了方便,找一个最近的整数。因此可以做一个手动调整,把VIP3的门店改到:一个月内消费800元。类似地,其他门槛也能做同样调整。

调整好了以后,我们已经分离出了大客户/小客户,可以做下一步的分类了。下一步可以做R。如何确定R的分类呢?可以直接根据业务特点来定。比如打车,即使再需要坐车的人,也不可能天天出门,因此R值不需要设定的太短,否则天天在人家耳朵边喊:“来坐车来坐车”,也太过度骚扰用户了。

R值可以以周为单位分类。一周内有工作日和休息日,如果用户真的是刚需,那么最迟1周也该来坐一次车了(如下图)。

分好类以后,可以做交叉表,观察不同VIP的客户在R值分布情况(如下图)。

看起来,VIP等级越高,R值越小,而VIP0的用户,居然有80%已经2周以上都没来了,要么真的没需求,要么已经流失了。这样,对VIP0的分析建议,也很清楚了:结合天气、节假日、活动等具体场景,给小额优惠,配合单次打车优惠券唤醒用户。

对于很高价值的:掏真金白银,维护好关系

对于很低价值的:定时唤醒,捞回来一个是一个

对于不高不低的,则要区分行为来看。

比如本案例中VIP1型用户,活跃度的两级分化很明显,一波人很活跃,一波人很沉默,而其消费能力都是差不多的。此时可以有两个基本策略:

针对高活跃的,推出一个捆绑XX天的优惠套餐,锁定后续消费

针对低活跃的,在其沉睡一段时间以后,推出大额激励,拉动二次消费

这样的思路下,F就可以作为参考,从VIP1里,用F值区分出高低活跃两类人,之后制定具体策略。

这样就完成了一个简单的RFM分析,而且每个客群都有针对性业务建议给到哦。

如果只到这里就停下,那就太可惜了!因为RFM模型价值远远不止于此。

三、RFM的变型

RFM的真正价值,在于:它是一种利用时间、频次、数量关系,区分轻重度用户的方法。在很多业务场景下,都可以用类似的思路解决问题。

比如:考察用户的活跃行为,也可以分为RFA

  • R(Recency):最近一次活跃距今时间

  • F(Frequency):最近1周内活跃频次

  • A(amount):最近1周内累计活跃时长

这时候,RFA组合,也能清晰地区分出轻重度用户。并且,根据RFA组合,还能找到下一步运营思路,比如以下两个用户,看起来大体相似,但可以根据行为特点,设置不同的内容推荐方案,激活用户:

四、RFM的缺点

注意,RFM的缺点是很明显的:它仅仅考虑了用户的行为数量,没有考虑用户在干什么。比如用RFM考察用户消费,就少了一个关键内容:用户买的是啥。同样的RFM数值,可能情况完全不一样,比如:

  • R:距今30天未消费

  • F:最近1个月仅1次消费

  • M:1000元

在RFM分类里,符合上述条件的是同一类客户。可是,如果我们发现:

A用户:趁大促销,囤了1000元洗发水、沐浴露、护发素、纸巾

B用户:趁大促销,买了个1000元的空调

那即使RFM分类一致,我们也知道,A与B用户是完全不同的两类人,应该采用2类激活消费的策略。因此,RFM模型可以用,但是要结合用户消费品类,做细化思考哦。

作者:小熊妹。公众号:码工小熊。数据界新人,喜欢数据分析、数据挖掘。


http://chatgpt.dhexx.cn/article/vutYXElI.shtml

相关文章

线性代数:如何求特征值和特征向量?

一、特征值和特征向量的定义 1 首先让我们来了解一下特征值和特征向量的定义,如下: 2 特征子空间基本定义,如下: END 二、特征多项式 1 特征多项式的定义,如下: 2 推论:n阶方阵A可逆的充…

如何用计算机求特征值特征向量,利用QR算法求解矩阵的特征值和特征向量

利用QR算法求解矩阵的特征值和特征向量 为了求解一般矩阵(不是那种幼稚到shi的2 x 2矩阵)的特征值. 根据定义的话,很可能需要求解高阶方程... 这明显是个坑...高阶方程你肿么破... 折腾了好久 1.我要求特征值和特征向量. 2.找到一种算法QR分解矩阵求解特征值 3.QR矩…

【考研线代】五. 特征值和特征向量

文章目录 第五章 特征值和特征向量5.1 特征值,特征向量5.1.1 概念5.1.2 性质 & 定理 & 推论 ⭐5.1.3 求特征值和特征向量的方法数值型矩阵抽象型矩阵巧解矩阵特征值方法⭐ 5.2 相似矩阵5.2.1 概念5.2.2 性质5.2.3 求可逆矩阵P使得A可相似对角化方法 5.3 实对…

线性代数特征值

特征值的性质: 下面是例题: 要注意单位阵的特征值是替换成1 注意下面两个: 例题5: 仔细看解题过程。 例题6: 运用了特征值相加等于矩阵主对角线元素之和 、特征值相乘等于矩阵的行列式、求特征值的定义。列出以上三…

eigen求特征值和特征向量

Eigen::Matrix2d matrix_22;matrix_22 << 2,3,2,1;cout << "matrix \n"<< matrix_22<<endl;//Eigen::SelfAdjointEigenSolver<Eigen::Matrix2d> eigen_solver1 ( matrix_22 );/这句是啥不清楚Eigen::EigenSolver<Eigen::Matrix2d&…

特征多项式法(characteristic polynomial )求特征值(结合lanczos和householder)(python,数值积分)

第三十四篇 特征多项式法求对称三对角矩阵的特征值 特征多项式 在之前的篇章中介绍过的&#xff0c;一个矩阵的特征值可以形成一个n阶多项式的根&#xff0c;称为“特征多项式”。线性方程的求解方法可以用来求这些根&#xff0c;详情可以翻看我之前写过的文章。但这并不是一…

Matlab求特征值和特征向量 + find函数的基本简单用法

A[1 5 4; 3 2 1;5 6 6] 计算矩阵A的特征值和特征向量的函数是eig&#xff08;A&#xff09;&#xff0c;常用方法为&#xff1a; 1.求矩阵的特征值 每一列有一个特征值&#xff0c;可知A有三个特征值 设矩阵A的全部特征值构成向量E Eeig(A) 执行选中内容命令行窗口如下&…

Eigen求特征值与特征向量

这里列举三种方式求矩阵的特征值与特征向量 #include <stdio.h> #include <stdlib.h> #include<Eigen/Eigen>using namespace std; using namespace Eigen;void main() {MatrixXd m(3, 3);m << 1,-2,2,-2,-2,4,2,4,-2;cout << m << endl …

matlab 求特征值的命令,matlab怎么求特征值

matlab怎么求特征值&#xff1f; 求矩阵的特征值和特征向量方法 方法/步骤 第一步我们首先需要知道计算矩阵的特征值和特征向量要用eig函数&#xff0c;可以在命令行窗口中输入help eig&#xff0c;查看一下eig函数的用法&#xff0c;如下图所示&#xff1a; 第二步在命令行窗口…

转: 特征值和特征向量--1

转&#xff1a;https://jingyan.baidu.com/article/27fa7326afb4c146f8271ff3.html 一、特征值和特征向量的定义 1 首先让我们来了解一下特征值和特征向量的定义&#xff0c;如下&#xff1a; 2 特征子空间基本定义&#xff0c;如下&#xff1a; END 二、特征多项式 1 特征多项…

线性代数(8):特征值、特征向量和相似矩阵

一、特征值和特征向量 &#xff08;2&#xff09;定义 有矩阵 A 为 n 阶矩阵&#xff0c;Ax λx &#xff08; λ 为一个实数&#xff0c;x为 n 维非零列向量 &#xff09;&#xff0c;则称 λ 为方阵 A 的特征值&#xff0c; x 为特征向量&#xff1b; &#xff08;2&#x…

mosquitto入门教程

参考大神的博客&#xff1a; http://mqtt.org/ MQTT 是一个轻型协议&#xff0c;使用基于 TCP/IP 协议的发布/订阅消息转发模式&#xff0c;专门用于机器对机器 (M2M) 通信。 MQTT 协议的中心是 MQTT 服务器或代理 (broker) &#xff0c;支持发布程序和订阅程序进行访问&…

mosquitto源码分析(一)

关于mqtt、mosquito的技术交流&#xff0c;可入群&#xff1a;221779856 本文由逍遥子撰写&#xff0c;转发请标注原址&#xff1a; http://blog.csdn.net/houjixin/article/details/21461225 一、 Mosquitto简介 mosquitto是一款实现了消息推送协议MQTT v3.1 的开源消息代理…

mosquitto安装与使用

Eclipse Mosquitto 是实现MQTT协议版本5.0、3.1.1和3.1的开源消息代理&#xff08;经EPL / EDL许可&#xff09;。mosquitto 是一个开源的轻量级的C实现&#xff0c;适合在从低功耗单板计算机到完整服务器的所有设备上使用。mosquitto包括服务端和客户端。官网&#xff1a;http…

NMOS和PMOS管

这里我先说一下我自己分辨MOS管的方法 对于NMOS我们看下图中的箭头&#xff0c;都是远离源头。 对于PMOS我们看箭头&#xff0c;都是指向源头 P&#xff1a;POSITIVE积极的寻找自己的起源 N&#xff1a;NEGTIVE消极的远离自己的源头 首先明确一点&#xff0c;S是源极&#xff…

mosquitto接口流程图

接口流程图 1、mosquitto_new2、mosquitto_reinitialise3、mosquitto_connect_async4、mosquitto_loop5、mosquitto_loop_start6、mosquitto_loop_stop7、mosquitto_loop_forever8、mosquitto client自定义开发流程 1、mosquitto_new 2、mosquitto_reinitialise 3、mosquitto_c…

Mosquitto常用命令

1 mosquitto服务器的搭建 服务器这里使用了阿里云的服务器&#xff0c;mosquitto默认需要1883的TCP入端口。需要在安全策略里设置一下。端口当然也可以选其他端口进行配置。 服务安装 # 服务器终端安装mosquitto和mosquitto-clients&#xff0c;后者是一些客户端&#xff0c;…

mosquitto 在 Windows 上的安装

文章目录 第一步&#xff1a;准备安装文件第二步&#xff1a;安装Mosquitto第三步&#xff1a;安装OpenSSL第四步&#xff1a;将要求的DLL放置Mosquitto安装目录下第五步&#xff1a;添加环境变量第六步&#xff1a;验证 第一步&#xff1a;准备安装文件 安装文件点此下载 注…

Mosquitto --topic

订阅树的概念 Mosquitto通过订阅树的方式来管理所有的topic以及客户端的订阅关系&#xff0c;它首先将所有的topic按照/分割并组织成一棵树结构&#xff0c;从根节点到树中的每个节点即组成该节点所对应的一个topic&#xff0c;每个topic都保存一个订阅列表&#xff0c;…

Mosquitto简介及搭建

文章钢要&#xff1a; 1、了解Mosquitto服务器 2、在Liunx中搭建Mosquitto服务器 3、设置Mosquitto集群 一、Mosquitto简介 一款实现了消息推送协议 MQTT v3.1 的开源消息代理软件&#xff0c;提供轻量级的&#xff0c;支持可发布/可订阅的的消息推送模式&#xff0c;使设备对…