PowerBi中RFM模型的应用

RFM 模型 是数据分析中非常经典、实用的一种用户价值评估模型,特别适合用在电商、营销、会员管理、客户分析等场景 中。下面我会从原理、计算、分层、Power BI 实现和应用场景五个方面详细讲解。


🧠 一、什么是 RFM 模型?

RFM 模型是从三个维度来衡量客户价值的:

字母 含义 中文释义 说明
R Recency 最近一次购买时间 越近越活跃
F Frequency 购买频率 越多越忠诚
M Monetary 购买金额 越高越有价值

🔍 二、RFM 怎么计算?

假设你有客户的交易记录表,包含:

  • 客户ID(CustomerID)
  • 订单日期(OrderDate)
  • 金额(Amount)

你可以按客户分组,计算出以下字段:

客户 R(天数) F(订单数) M(总金额)
A 7 10 ¥5000
B 90 2 ¥500
C 15 5 ¥1200

其中:

  • R:今天日期减去最后一次购买日期
  • F:订单数量
  • M:消费总金额

📊 三、如何打分和分层?

通常是把 R、F、M 分别打 1~5 分(或其他等级),越高分代表越好:

维度 打分规则(示例)
R 越近打分越高(1~5)
F 越多打分越高(1~5)
M 金额越大打分越高(1~5)

👉 然后拼接 RFM 分数,比如客户 A 的得分是 5-5-5,客户 B 是 1-1-1。


🎯 分层示例(RFM 组合标签):

RFM组合 用户类型
555 核心客户
155 潜在高价值客户
511 活跃新用户
111 流失低价值用户

🛠 四、Power BI 中如何实现 RFM 模型?

✅ 步骤 1:准备数据

你的数据需要包括这些字段:

  • CustomerID
  • OrderDate
  • SalesAmount

✅ 步骤 2:建一个"RFM"计算表(用 DAX)

DAX 复制代码
最近购买天数 = 
DATEDIFF(
    MAX(Sales[OrderDate]),
    TODAY(),
    DAY
)

购买次数 = 
CALCULATE(COUNTROWS(Sales), ALLEXCEPT(Sales, Sales[CustomerID]))

总消费金额 = 
CALCULATE(SUM(Sales[Amount]), ALLEXCEPT(Sales, Sales[CustomerID]))

然后你可以为 R、F、M 分别打分:

DAX 复制代码
R得分 = 
SWITCH(
    TRUE(),
    [最近购买天数] <= 30, 5,
    [最近购买天数] <= 60, 4,
    [最近购买天数] <= 90, 3,
    [最近购买天数] <= 180, 2,
    1
)

F得分 = 
SWITCH(
    TRUE(),
    [购买次数] >= 20, 5,
    [购买次数] >= 10, 4,
    [购买次数] >= 5, 3,
    [购买次数] >= 2, 2,
    1
)

M得分 = 
SWITCH(
    TRUE(),
    [总消费金额] >= 10000, 5,
    [总消费金额] >= 5000, 4,
    [总消费金额] >= 2000, 3,
    [总消费金额] >= 500, 2,
    1
)

RFM标签 = [R得分] & [F得分] & [M得分]

✅ 步骤 3:使用这个 RFM 分层字段做可视化

你可以创建饼图、柱状图,查看各类客户群体的数量、占比、总销售额等。


🚀 五、RFM 应用场景

行业 应用方式
电商 用户精准营销、优惠券投放
旅游 活跃旅客推荐新路线、流失用户召回
金融 高价值客户 VIP 管理、低活跃用户提醒
游戏 核心玩家维护、充值用户促活
教育 学生分类管理、课程推荐策略

✅ 总结

项目 内容说明
模型名 RFM(Recency, Frequency, Monetary)
用途 客户价值分析与分层
方法 计算每个维度 → 打分 → 拼标签
工具 Power BI 中可用 DAX 实现
相关推荐
秀儿还能再秀11 小时前
基于Excel的数据分析思维与分析方法
数据分析·excel
好开心啊没烦恼15 小时前
Python 数据分析:numpy,说人话,说说数组维度。听故事学知识点怎么这么容易?
开发语言·人工智能·python·数据挖掘·数据分析·numpy
涤生大数据18 小时前
Apache Spark 4.0:将大数据分析提升到新的水平
数据分析·spark·apache·数据开发
可观测性用观测云19 小时前
Pipeline 引用外部数据源最佳实践
数据分析
大数据CLUB1 天前
基于spark的奥运会奖牌变化数据分析
大数据·hadoop·数据分析·spark
好开心啊没烦恼1 天前
Python 数据分析:计算,分组统计1,df.groupby()。听故事学知识点怎么这么容易?
开发语言·python·数据挖掘·数据分析·pandas
数据饕餮1 天前
Python数据分析基础03:探索性数据分析
python·信息可视化·数据分析
用户Taobaoapi20142 天前
母婴用品社媒种草效果量化:淘宝详情API+私域转化追踪案例
大数据·数据挖掘·数据分析
key062 天前
电子水母函数解析
数据分析
Brduino脑机接口技术答疑2 天前
脑机新手指南(二十一)基于 Brainstorm 的 MEG/EEG 数据分析(上篇)
数据挖掘·数据分析