一、数据背景与描述
1.数据背景
中国电商行业经过初期的粗狂式发展,从有货就能卖的模式逐渐转变到精细化运营的模式。通过对大量数据进行深入分析,可以帮助电商网站提升运营效率、优化产品组合、提高营销效果等。同时,通过对用户行为的分析,可以更好地了解用户的需求和购物习惯,从而提供更加个性化的服务和促进销售。此外,数据分析还可以帮助电商网站评估供应商和产品的表现,以及预测未来的销售趋势等。在此背景下,基于电商用户数据开展分析。
2.数据来源
本次项目数据集通过公开渠道获得,数据来源于阿里云天池竞赛平台,包含了淘宝天猫2017年11月25日至2017年12月3日之间,有行为的约一百万随机用户的所有行为(行为包括点击、购买、加购、喜欢)。
3.数据描述
说明:
用户行为类型共有四种,它们分别是:
关于数据集大小的一些说明如下:
由于此数据量级高达一亿条,考虑到电脑性能问题,现取100万条数据进行分析。
二、分析目的
1.解决问题
基于数据,解决以下问题:
①分析常见的电商分析指标,建立用户行为转化漏斗模型,确定各个环节的流失率,有哪些需要改进的环节?
②哪些商品是热搜商品?哪些是畅销商品?热搜商品是否就是畅销商品?
③每周不同天,每天不同时间段对于用户行为的影响。
④使用RFM方法对用户进行分类。找最具价值的核心付费用户群,对这部分用户的行为进行分析。
2.分析思路
采用多维度拆解分析方法对问题进行拆解,并在分析过程中使用漏斗模型、RFM模型分析法、假设检验分析方法对流程级业务指标中的问题进行分析。
分析思路如下:
三、数据清洗
0.导入表设置
根据字段内容进行分析后,将UserID,ItemID,TimeStamp设置成联合主键,导入源数据:
1.删除重复值
验证userbehavior表中各字段有无重复值,代码如下:
select UserID,ItemID,TimeStamp
from userbehavior
group by UserID,ItemID,TimeStamp
having count(1)>1;
运行:
经验证,不存在重复。
2.缺失值处理
验证是否存在缺失值,代码如下:
select count(UserID),count(ItemID),count(categoryID),count(TimeStamp)
from userbehavior;
运行结果:
经验证,无缺失值存在。
3.一致化处理
本次分析需要用到日期时间数据,经观察,原数据TimeStamp记录的是时间戳,包含了日期和时间,因此需要将其转化为日期和时间格式,进一步进行拆分。
①新增日期和时间字段:
alter table userbehavior
add Date varchar(20) not null, add Time varchar(10) not null;
运行结果:
②将时间戳转化格式,更新字段内容:
UPDATE userbehavior set Date = FROM_UNIXTIME(TimeStamp,'%Y-%m-%d'),
Time = FROM_UNIXTIME(TimeStamp,'%k');
后续按时间分析用户行为时,最小单位从小时分析,因此提取时间时只制定‘%K’
运行结果:
注:
from_unixtime(timestamp ,date_