基于Python的RFM模型驱动零售客户关系管理优化项目

19ef3016050c5b9d974c9c11572d974c.png

 

项目背景&需求

在竞争激烈的在线零售市场,客户关系管理对于公司的成功至关重要。为了更有效地理解和管理客户群体,我们提出了一个基于RFM模型的项目。该项目旨在通过分析客户的最近购买时间、购买频率和购买金额,帮助该英国总部的在线零售公司更有针对性地开展营销活动、提供个性化服务,并优化资源分配。

  1. RFM指标计算: 通过Python计算每个客户的Recency(最近一次购买时间)、Frequency(购买频率)和Monetary(购买金额)指标。

  2. 客户分层: 基于RFM指标和K-means模型,我们将设计客户分层模型,将客户划分为不同的段位。针对制定营销策略,提供符合客户需求的产品和服务。

项目收益

  1. 个性化服务: 公司可以根据不同RFM分数和K-Means用户分层的特征,提供更加个性化的服务和产品推荐,增强客户满意度和忠诚度。

  2. 精准营销: 通过深入了解客户的购买行为,并结合K-Means用户分层,公司可以更有针对性地制定市场营销策略,提高广告和促销活动的效果。

  3. 资源优化: 通过K-Means用户分层和RFM分数计算,公司可以更有效地分配资源,优先关注对企业最有价值的客户,提高整体运营效率。

数据内容

数据介绍

3a49c1a676d6f48a6709e6b2d8f37c10.png

数据集包含了一个总部位于英国、注册在非实体零售店的在线零售公司在2010年12月1日至2011年12月9日期间发生的所有交易。公司主要销售独特的全场合礼品。公司的大部分客户是批发商。

字段描述

  1. InvoiceNo(发票号): 发票号码。名义变量。一个6位数的整数,为每笔交易分配一个唯一编号。如果此代码以字母 'c' 开头,表示这是一笔取消的交易。

  2. StockCode(产品代码): 产品(商品)代码。名义变量。一个5位数的整数,为每个不同的产品分配一个唯一编号。

  3. Description(描述): 产品(商品)名称。名义变量。

  4. Quantity(数量): 每笔交易中每个产品(商品)的数量。数值变量

  5. InvoiceDate(发票日期): 发票日期和时间。数值变量。交易生成的日期和时间。

  6. UnitPrice(单价): 单价。数值变量。产品的单价,以英镑(£)计。

  7. CustomerID(客户编号): 客户号码。名义变量。一个5位数的整数,为每个客户分配一个唯一编号。

  8. Country(国家): 国家名称。名义变量。客户所居住国家的名称。

RFM是什么?

从客户忠诚度F(消耗频率)、粘性R(最近一次消耗)和用户价值M(arpu)3个维度来构建rfm模型,完成用户分层

RFM分析就是根据客户活跃程度和交易金额的贡献,进行客户价值细分的一种方法

66993a12415379f303aebf7d703a4f40.png

0a403a2a074c656be390623797000460.gif

什么是 K 均值聚类?

K 均值聚类是基于样本集合划分的聚类方法。K 均值聚类把样本集合划分为 K 个子集, 构成 K 个类,将 n 个样本分到 K 个类中,每个样本到其所属类的中心距离最小。每个样本只能属于一个类,所以其属于硬聚类算法。

模型

91696f86242da106687613e8ee448f9b.png

策略

97dba3d3b616493ed4be45396b2333de.png

如何确定K?

DBSCAN

d34dd3fc696187017257c73713909a62.png