背景与挖掘目标
Part.1
案例背景
随着互联网的发展,电子商务已成为世界经济重要的组成部分。人们在不同的电商平台上浏览商品,然后直接下单购买,这一流程相比于传统商业省去了很多环节,在提高效率的同时还降低了交易双方的成本。电商平台为了对买卖双方提供高效和体验良好的交易服务,不断地更新平台功能,令客户更高效地获得感兴趣或是有购买意愿的商品。
平台业务功能的实现基于海量客户行为数据的反馈分析结果,而购物优惠活动、主题购物节和平台功能效果实现等运营情况,也可以由购买者的行为数据衡量优劣。
Part.2
案例目标
( 1 )流量指标分析:通过分析不同时间维度的 PV 和 UV 指标,探索这个月内平台的客户流量情况,并结合可视化分析结果进行总结;
( 2 )客户购买情况分析:从客户的成交率、付费率、购买数、复购率和购买商品情况等分析角度挖掘客户在该平台的购买情况、客户购买力、客户对该平台的忠诚度和客户长购商品等,并结合可视化分析结果进行总结;
( 3 )客户行为漏斗分析:运用漏斗分析挖掘客户行为转变的转化率,例如客户“点击”行为转变为“支付”行为的转化率;
( 4 )客户群体分类:使用 RFM 模型对客户群体分类,并绘制雷达图,结合分类结果分析客户价值。同时依据客户群体特点提供针对性的运营措施。
分析方法与过程
💻对购买行为数据预处理前,需要先对购买数据进行采集。本案例利用Python网络爬虫技术对购买数据进行采集。由于本案例的重点是对通过两个纬度进行客户流量分析,且网络数据的爬取具有时效性,因此,本案例不再详细介绍数据的采集过程。以下分析所使用的数据与分析结果,仅作为范例参考。
Part.1
购买行为数据预处理
为了更全面、多方位的对数据有一个更好的了解,找出数据中需要进行处理的缺失值、异常值、重复值和其他需要进行数据清洗的问题,现在对数据进行探索性分析。
先对数据进行数据类型换,修改列索引,再用.drop()函数删除空值,.drop_duplicate()函数去除重复值之后,再用sort_values()排序函数,对每一列数据进行排序,然后查看每一列的部分数据。购买行为数据预处理的代码如代码清单1所示。
#对其中的label进行重命名
dt = dt.rename (columns = {'user_id' : '用户名' , 'item_id' : '商品名' , 'behavior_type' : '用户行为类型' , 'user_geohash' : '地理位置' , ' item_category' : '品类名' , 'CustomerID' : '用户名' , 'time' : '行为时间' })
#计算缺失(缺失数/总和)
dt.apply (lamba x : sum (x.isnull () / len (x))
#对时间数据进行处理,将日期与小时数据分开
dt['date'] = dt['行为时间'].str[0:10]
dt['hour'] = dt['行为时间'].str[11:]
dt['date'] = pd.to_datetime (dt['date'])
dt['行为时间'] = pd.to_datetime (dt['行为时间']
dt['hour'] = dt['hour'].astype('int64')
dt.sample(5)
⭐ ⭐ ⭐
运行结果
通过以上运行结果的数据可以得出:有8列数据,一共有12256906条购买记录,对没有价值的空值进行去除。
对去除后的数据进行探索性分析,可以得到该数据需要处理的地方即缺失值、异常值、重复值、多余值并对其进行相关操作。
Python购买者行为分析(二)请留意后续发布