目录
前言
本项目带领大家对阿里移动电商数据集做了初步的数据分析,通过数据分析我们能对业务做出更好的洞察并进一步采取Action。
数据名称:UserBehavior.csv
分析工具:MySQL、Tableau、Nactive
一、项目概述
1、数据介绍
本项目数据来源于阿里云天池《淘宝用户购物行为数据可视化分析》进行研究。
数据链接:淘2宝用户购物行为数据可视化分析_数据集-阿里云天池 (aliyun.com)
本数据集包含了2017年11月25日至2017年12月3日之间,有行为的约一百万随机用户的所有行为(行为包括点击、购买、加购、喜欢)。数据集的组织形式和MovieLens-20M类似,即数据集的每一行表示一条用户行为,由用户ID、商品ID、商品类目ID、行为类型和时间戳组成,并以逗号分隔。关于数据集中每一列的详细描述如下:
用户行为详细描述如下:
数据集大小如下:
2、思维导图
二、数据预处理
1、观察数据
将数据文件导入nactive查看数据(连接数据库→新建表→导入数据)。
2、数据导入
由于数据文件中没有表头则用nactive修改数据列名,并将导入nactive的表头的数据重新添加。
由于原数据集记录量过大,选取前10万条数据进行研究
代码如下(示例):
create table if not exists user_behavior as
(select*from userbehavior limit 100000);
3.数据处理
对数据进行去重处理
代码如下(示例):
select distinct *from user_behavior
group by customer_id,order_id,category_id,behavoir_type,happening_time;
查看数据缺失值
select count(customer_id),count(order_id),count(category_id),count(behavoir_type),
count(happening_time)from user_behavior;
结果记录均为100000条则数据集中并无缺失值
添加新列,对时间戳数据进行转换
#添加 order_dt日期时间列
alter table user_behavior add column order_dt datetime;
update user_behavior set order_dt= from_unixtime(happening_time);
#添加 order_date日期列
alter table user_behavior add order_date date;
update user_behavior set order_date= from_unixtime(happening_time);
#添加 order_dtime日期时间列
alter table user_behavior add order_dtime time;
update user_behavior set order_dtime= from_unixtime(happening_time);
异常值处理:将不在2017年11月25号至2017年12月3日的用户行为记录进行剔除。
delete from user_behavior where order_dt not between'2017-11-25'and'2017-12-03';
select count(customer_id),count(order_id),count(category_id),count(behavoir_type),
count(happening_time)from user_behavior;
剔除了13259条,剔除后的数据为86741条。
相关数据进行校对
select max(order_dt),min(order_dt)from user_behavior;
相关时间段为
2017-12-02 23:59:59 | 2017-11-25 00:00:17 |
三、用户行为分析
1、计算日新增用户
SELECT first_date,COUNT(DISTINCT customer_id) new_uv
FROM (SELECT customer_id,MIN(order_date) first_date FROM user_behavior
GROUP BY customer_id having MIN(order_date) between '2017-11-25' and '2017-12-02') t GROUP BY first_date;
first_date | new_uv |
2017/11/25 | 695 |
2017/11/26 | 170 |
2017/11/27 | 59 |
2017/11/28 | 32 |
2017/11/29 | 19 |
2017/11/30 | 8 |
分析:
从11月25日到12月1日随着时间的增加,日新增人数正在逐渐的减少 ,12月2日没有新增人数。
其中,25日至28日的日新增人数增长比较明显,28日到12月1日的新增人数较少,后续考虑新增人数减少的原因,是否与双12等促销活动有关。
2、计算uv、pv、人均浏览次数反映用户情况
总体uv、pv、人均浏览次数