RFM 模型

news2024/11/27 4:40:20

RFM 模型

    • 顾客价值分析

 


顾客价值分析

由于激烈的市场竞争,各个公司相继推出了多样灵活的优惠方式来吸引更多的客户。

对一个没有购买力的顾客,你打电话推销优惠活动毫无作用,可一个高价值顾客,会说有优惠活动怎么不通知我呢!

为了公司能立足于市场,需要对不同的客户群体提供个性化的客户服务。

这种方法就是 RFM 模型。

RFM 模型是一个传统的数据分析模型,沿用至今约 60 年。

1961 年,乔治·卡利南在顾客的资料库中指出,最近一次消费、消费频率、消费金额三项数据可以较为客观的描绘顾客的轮廓。

企业针对近期有消费的”新客“、消费频率高的”常客“、消费金额高的”贵客“进行精准营销和广告投放,确实收到了意料之外的惊喜。

因此,这三项数据成为了衡量客户价值和客户创利能力的重要工具和手段。也是 RFM 模型的三个重要指标:

  • R(Recency):最近一次消费时间间隔,指用户最近一次消费时间距离现在的时间间隔;

  • F(Frequency):消费频率,指用户一段时间内消费了多少次;

  • M(Monetary):消费金额,指用户一段时间内的消费金额。

RFM 模型多用于精细化运营服务。单看 R、F、M 三个指标,其本身已经具备了一定的参考性:

  • 一般来说,比起许久没有消费的顾客,消费时间间隔短的客户再次购买的几率较高。针对这类客户,可以采取唤醒或者刺激消费,如赠送打折券等。

  • 消费频率高的客户,其忠诚度相对较高,可以规律性地提醒这类客户关于产品的一些优惠信息。

  • 消费金额高的客户,客户价值也越高,可以提供专属该类客户的优惠价格。

RFM 模型分析步骤:

  • 最近一次消费数据 = 当前时间 - 该用户最新一次消费数据
  • 消费频率 = 该用户不重复的订单号数
  • 消费金额 = 该用户的所有消费额进行加和
# 计算时间间隔  
today = '2000-01-01 00:00:00'  # 当前时间
pd.to_datetime(today) - pd.to_datetime(grouped_data['发货日期'])

节奏,确认关键的节点进行划分。比如小学考试中满分 100 分,达到 60 分就算及格;

或者,根据实际经验进行划分。比如一般的用户消费水平在 1w,消费超过 10w 是高净值人群。

# 定义函数按照区间划分 R 值(间隔时间),返回等级越高越重要
def caculate_r(s):
    if s <= 100:
        return 5
    elif s <= 200:
        return 4
    elif s <= 300:
        return 3
    elif s <= 400:
        return 2
    else:
        return 1
        
# 对 R 值进行评分
rfm_data['R评分'] = rfm_data['时间间隔'].agg(caculate_r)
# 定义函数按照区间划分 F 值(消费频率),返回等级越高越重要
def caculate_f(s):
    if s <= 5:
        return 1
    elif s <= 10:
        return 2
    elif s <= 15:
        return 3
    elif s <= 20:
        return 4
    else:
        return 5

# 对 F 值进行评分
rfm_data['F评分'] = rfm_data['总次数'].agg(caculate_f)
# 定义函数按照区间划分 M 值(消费金额),返回等级越高越重要
def caculate_m(s):
    if s <= 2000:
        return 1
    elif s <= 4000:
        return 2
    elif s <= 6000:
        return 3
    elif s <= 8000:
        return 4
    else:
        return 5

# 对 M 值进行评分
rfm_data['M评分'] = rfm_data['总金额'].agg(caculate_m)
# 计算 R评分、F评分、M评分的平均数
r_avg = rfm_data['R评分'].mean()
f_avg = rfm_data['F评分'].mean()
m_avg = rfm_data['M评分'].mean()

得到 R、F、M 各值的阈值以后,将要为 R、F、M 各值进行高低值的标记。

将获得的阈值与 RFM 分数进行比较,高于阈值记为“高”,低于阈值记为“低”,高低值可暂时用 1 和 0 表示。

# 将R评分、F评分、M评分 的数据分别与对应的平均数做比较
rfm_data['R评分'] = (rfm_data['R评分'] > r_avg) * 1
rfm_data['F评分'] = (rfm_data['F评分'] > f_avg) * 1
rfm_data['M评分'] = (rfm_data['M评分'] > m_avg) * 1

# 拼接R评分、F评分、M评分
rfm_score = rfm_data['R评分'].astype(str) + rfm_data['F评分'].astype(str) + rfm_data['M评分'].astype(str)
# 数据已经由三个数字组成,其中 1 代表着高价值,0 代表着低价值。

为了将数字替换为价值的高低,可以使用 replace() 方法对数据进行批量替换。

# 定义字典标记 RFM 评分档对应的用户分类名称
transform_label = {
    '111':'重要价值用户',
    '101':'重要发展用户',
    '011':'重要保持用户',
    '001':'重要挽留用户',
    '110':'一般价值用户',
    '100':'一般发展用户',
    '010':'一般保持用户',
    '000':'一般挽留用户'
}

# 按【客户类型】分组,统计用户的数量
customer_data = rfm_data.groupby('客户类型')['用户 ID'].count()

一般发展用户和一般挽留用户的人数偏多。

对于一般发展用户较多的情况,问题可能在于一般发展用户后续的复购转化不足。可以多通过短信、平台网站等渠道,在一般发展用户首购后的一段时间内可以领取复购券等策略,将这类用户转化为更高价值的用户类型。

对于一般挽留用户较多的情况,问题可能在于平台的产品竞争力或者服务不足。可以多对比竞品公司的产品,对自身的产品进行提升。同时,可以采取赠送优惠券的策略,并收集用户对平台产品以及服务的评价。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88682.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

交叉梯度函数的MATLAB实现及代码分享02

交叉梯度函数的MATLAB实现及代码分享02 交叉梯度函数可用于反演成像中。作为一个连接不同物性参数的桥梁&#xff0c;交叉梯度函数可以实现不同物性参数的联合反演成像。 本文是对上一个博文的补充&#xff0c;详见交叉梯度函数的MATLAB实现及代码分享01&#xff0c;上一篇博…

人工智能导论课堂笔记

人工智能导论时间&#xff1a;2022年10月19日下午 班级&#xff1a;2022级人工智能应用技术1班 作业问题&#xff1a; Python安装注意事项 1.下载Python3.X的版本&#xff0c;如&#xff1a;3.10, 3.9&#xff0c; 3.8&#xff0c;不推荐下载2.7版本&#xff08;已经不使用&…

【Mysql】慢sql分析优化案例汇总

【Mysql】慢sql分析优化案例汇总&#xff08;一&#xff09;案例一&#xff1a;阿里云慢sql挑战赛实战&#xff08;一&#xff09;案例一&#xff1a;阿里云慢sql挑战赛实战 190毫秒干到2毫秒 【1】表结构 【2】待优化sql 【3】第一次explain分析 【4】选取驱动表 优先选择…

java项目_第174期ssm高校信息资源共享平台_ssm毕业设计

java项目_第174期ssm高校信息资源共享平台_ssm毕业设计 【源码请到下载专栏下载】 今天分享的项目是《ssm高校信息资源共享平台》 该项目分为3个角色&#xff0c;管理员、学生、教师角色。 学生可以浏览前台,包含功能有&#xff1a; 首页、课程信息、教学资源、新闻资讯。 教师…

Linux Kernel 6.0 CXL Core pci.c 详解

文章目录前言相关链接Ref正文前言 CXL 是一个比较新的技术&#xff0c;所以我研究的内核源码是选了当前比较新的内核版本 linux 6.0。打算将内核关于 CXL 的驱动进行解析一遍&#xff0c;一步一步慢慢来。 在阅读之前&#xff0c;希望读者能有一定的 PCIe 基础知识&#xff0…

java计算机毕业设计ssm智能线上教育mo0l5(附源码、数据库)

java计算机毕业设计ssm智能线上教育mo0l5&#xff08;附源码、数据库&#xff09; 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。…

性能测试知识之三大模型

今天的这篇文章我会聊聊在实际工作中开展性能测试&#xff0c;前期最核心的工作。即业务模型、流量模型和数据模型这三大模型&#xff0c;该如何评估和建立。在性能测试工作中&#xff0c;业务模型、流量模型和数据模型是至关重要且必须在项目中构建的&#xff0c;否则很可能导…

【算法分析与设计】【期中(末)复习题】【2022秋】

文章目录一. 单选题二. 填空题三. 判断题四. 多选题一. 单选题 1.按照渐近阶从低到高的顺序排列下列表达式&#xff1a; 30n&#xff0c;2logn&#xff0c;4&#xff0c;n! A. 4<30n<2logn<n! B. 30n<4<2logn<n! C. n!<4<2logn<30n D. 4<2logn&…

YOLO算法改进之结合GradCAM可视化热力图(附详细教程)

🎄🎄YOLOv5/v7改进之结合GradCAM可视化热力图(附详细教程)🎄🎄 🚀🚀🚀NEW!!!魔改YOLOv5/v7目标检测算法来啦 ~ 🐱‍🏍 计算机视觉 —— 致力于目标检测领域科研Tricks改进与推荐 | 主要包括主干网络改进、轻量化网络、注意力机制、检测头部改进、空间金…

主数据管理(MDM),数据中台,国内有哪些知名供应商呢?

当企业的信息化、数据化发展到一定阶段的时候&#xff0c;大部分企业都会对主数据管理产生需求。为帮助企业加速数字化建设步伐&#xff0c;亿信华辰凭借多年在行业领域内积累的丰富经验并结合相关大数据技术成功打造了一款主数据管理产品&#xff0c;覆盖主数据标准、主数据质…

019 | 探究布衣上的刺绣图腾文化功能——以贵州册亨县布依族刺绣为例 | 大学生创新训练项目申请书 | 极致技术工厂

研究目的 当今我国社会的主要矛盾是人民日益增长的美好生活需要和不平衡不充分的发展之间的矛盾。但经济增长过快所带来的联动效应&#xff0c;导致人们一定程度上只注重金钱、利益&#xff0c;从而忽视了培养高尚的理想信念和增强民族精神的重要性。社会要保持平衡性&#xff…

基于低代码平台设计的订单管理系统,助力家具行业信息化建设

编者按&#xff1a;随着信息化的高速发展&#xff0c;传统的人工订单管理模式已经不适合现在企业发展的需求&#xff0c;一个成熟的订单管理系统可以帮助企业解决订单管理混乱的问题。本文介绍了低代码平台在订单管理系统实现方面的优势&#xff0c;并展示了相关案例。 关键词…

PE文件详解

字节存放顺序是小尾存储&#xff0c;高位保存高字节、低位保存低字节&#xff0c;因此是两位两位倒着读 1、DOS头&#xff1a;包括MZ头和DOS存根&#xff0c;指向DOS可执行程序部分 &#xff08;1&#xff09;MZ头&#xff1a;长度 40H&#xff0c;即4行乘16位&#xff0c; e_…

mmap

文章目录使用示例函数原型mmapmunmap传统读写文件mmap 原理eager实现lazy实现缺点使用示例 #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <sys/mman.h>int main(i…

高并发编程之阻塞队列

9 阻塞队列 9.1 BlockingQueue 简介 Concurrent 包中&#xff0c;BlockingQueue 很好的解决了多线程中&#xff0c;如何高效安全 “传输”数据的问题。通过这些高效并且线程安全的队列类&#xff0c;为我们快速搭建 高质量的多线程程序带来极大的便利。本文详细介绍了 Bloc…

十四、JavaScript——类型转化_数值

一、定义 将其他的数据类型转化为数值 使用Number()函数来将其他类型转化为数值&#xff0c;适用于任何类型使用parseInt() -- 将一个字符串转化为一个整数 -解析时&#xff0c;会自作向右读取一个字符串&#xff0c;直到读取到所有的整数位 parseFloat()…

想学设计模式、想搞架构设计,先学学 UML 系统建模吧

UML 系统建模 1 概述 1.1 课程概述 汇集 UML 及其相关的一些话题回顾 UML 相关的符号与概念以电商订单相关业务为例&#xff0c;借助 UML 完成系统建模将 UML 变成提升建模效率&#xff0c;表达架构思想的工具 1.2 什么是 UML ​ Unified Modeling Language 统一建模语言&a…

MEMS运动传感器:三轴数字输出陀螺仪——L3GD20

一、框图和引脚说明 二、机械和电气规格 三、应用 四、数字框图 4.1 框图 4.2 FIFO L3GD20为三个输出通道(偏航、俯仰和滚转)分别嵌入了32个16位数据FIFO槽。 五种模式&#xff1a;Bypass mode、FIFO mode、Stream mode、Bypass-to-Stream mode and Stream-to-FIFO mode。 …

ICG-Amine|ICG标记氨基|ICG-NH2

ICG-Amine|ICG标记氨基|ICG-NH2 中文名称&#xff1a;ICG标记氨基英文名称&#xff1a;ICG-Amine 分子式&#xff1a;C47H56N4O4S 分子量&#xff1a;773.04 外观&#xff1a;绿色粉末 溶解度&#xff1a;二氯甲烷 纯度&#xff1a;95% 结构式&#xff1a; Indocyanine …

JUC并发编程第十二篇,详解Synchronized与锁升级

详解Synchronized与锁升级一、概述二、Synchronized 版本升级优化与锁对象1、版本变化2、为什么每一个对象都可以成为一个锁&#xff1f;三、Synchronized锁升级步骤详解1、如何升级&#xff1f;2、无锁&#xff0c;不会出现竞争3、偏向锁4、轻量级锁5、重锁6、三种锁的比较四、…