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