电商数据分析入门-基于RFM模型的用户分析案例笔记

本文介绍了电商数据分析的基础,包括人物场数据的理解,数据分析步骤,以及RFM模型在用户分析中的应用。通过RFM模型计算用户最近购买时间(R)、购买频率(F)和购买金额(M),进行用户价值划分,为企业实现精准营销提供依据。文中使用Kaggle上的电商数据集,进行了数据预处理和分析,发现用户活跃度不高,但用户质量较高,建议关注流失用户并持续进行数据分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.认识电商数据

通常电商数据重点都是围绕着人物场三个方面进行划分,关于人的电商数据主要是能解释用户行为且能对用户进行画像的数据,包括用户的基本属性(年龄、地域、性别、年收入等)、行为属性(访问渠道、访问时间段、访问时长等)以及思想属性(用户评价、用户打分、用户投诉等);
关于物的电商数据主要能描述产品特征的数据,包括基本属性(分类、功能、物质特征等)和价值属性(价格、需求量等);
关于场则用于描述发生交易时的场景的地点,简单来说就是发生交易时店铺的样子是怎样的,而对于电商来说场包括虚拟的网上店铺的场和现实下用户购买的场,通常电商数据只能描述网上店铺的场。认识人物场三个方面的基本数据是电商数据分析的入门必要环节也是最基础的,对电商数据分析就是对这三方面进行分析,做好一个电商运营工作就是通过这些数据能去让特定的用户在合适的场里购买需要的物品。

2.数据分析的步骤

数据分析的核心内容就是拆分和整合。数据分析思维最核心也是最基础的步骤把问题用数字量化,就是把抽象的概念用数学的方式去解释。

步骤 内容
提出问题
量化问题
提取数据
数据处理
数据挖掘
数据结论
数据验证

3.认识RFM模型

RFM模型,R-Recency,客户最近一次购买行为的时间,F-Frequency,客户最近一段时间内购买行为的频繁,M-Monetary,客户最近一段时间购买行为的金额。
RFM模型通过这三个方面去衡量客户的价值,可以通过指定的划分标准对客户进行价值划分成不同的群体,针对不同价值的客户来采取不同的应对措施,也就是精准销售,知道客户的需求,就成功了一大半如拼多多、蓝绿手机都是精准销售的绝例。

4.数据分析过程

1、提出问题-认识用户,对用户进行分析
分类方法(标准)很多,这里采用RFM模型进行用户分析

2、量化问题
R就是以user_id进行分组,以特定的时间减去该用户购物记录时间得到天数差,再进行min得到最近一次购买时间。
F就是以user_id进行分组,对满足特定时间内的购物记录进行计数。M也同样是以user_id进行分组,对满足特定时间内的购物记录的金额进行统计。
然后通过对RFM不同的加权计算得到RFM得分,再根据RFM得分贴上不同的划分标签(高、中、低、差、非常差),查看用户的分布情况,进行针对性处理。

3、提取数据

这里采用了Kaggle上面的eCommerce Events History in Cosmetics Shop的数据集,此数据集包含一家中型化妆品在线商店5个月(2019年10月至2020年2月)的行为数据。数据网址
一共有五个文件
2019-Oct.csv
2019-Nov.csv
2019-Dec.csv
2020-Jan.csv
2020-Feb.csv

columns-9列含义:
event_time 事件事件
event_type 事件的类型-购物、加入购物车等
product_id 产品ID
category_id 分类的类别
category_code 分类的代码
brand 品牌的名字
price 物品的价格
user_id 用户ID
user_session 用户会话ID

python依次导入文件

import pandas as pd
filepath=r'2019-Oct.csv'
data_Oct=pd.read_csv(filepath)
#然后再合并在一起

python循环导入文件

data_all=[]
years=[2019,2020]
filenames=['Oct','Nov','Dec','Jan','Feb']
for year in years:
	for filename in filenames:
		 filepath=r'%d-%s.csv' %(year,filename)
		try:
			  data=pd.read_csv(filepath)
		except:
			  continue
		data_all.append(data)
data_alls=pd.concat(data_all,ignore_index=True)

由于数据集较大,只选取2020-Feb的数据
4、数据预处理
查看数据情况

data_Feb.info()

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4156682 entries, 0 to 4156681
Data columns (total 9 columns):
event_time       object
event_type       object
product_id       int64
category_id      int64
category_code    object
brand            object
price            float64
user_id          int64
user_session     object
dtypes: float64(1), int64(3), object(5)
memory usage: 285.4+ MB
data_Feb.head()
                event_time event_type  product_id          category_id category_code   brand  price    user_id                          user_session
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值