淘宝数据分析
此次数据分析基于阿里云天池数据集(用户行为数据集),对常见电商分析指标,包括转化率,PV,UV,复购率等进行分析,分析过程中使用Python进行数据的清洗,清洗后的数据导入MySQL数据库,运用MySQL进行数据提取,使用Excel进行数据可视化。
一、数据集
可见收集的数据的各种类型。
二、提出问题
1.用户购物情况
PV(总访问量),UV(用户总数),日均访问量,跳失率,用户各种行为类型,复购率分别是多少。
2.用户的购物行为转化
用户购物各个环节的转化率转化为漏斗图。
3.各种行为类型用户的特征
购买率高和购买率低的人群以及只收藏加购不消费和消费次数最多的人群分别有什么特征,如何针对各类人群推送信息
4.不同时间段用户的活跃情况
三、数据清洗
解压后的数据有3.4G,这样基本就告别EXCEL了,我们将数据导入python进行清洗数据
#导入相关包
import pandas as pd
import numpy as np
import time
#导入数据
data_origin = pd.read_csv(r'F:/111/UserBehavior.csv')
#设置列名
data_origin.columns = ['User_Id','Item_Id','Category_Id','Behavior_type','Timestamp']
#观察数据
data_origin.head(10)
#观察缺失值
#data_origin.isnull().sum()
index_lose = data_origin[data_origin['Timestamp'].isnull()].index
data_origin.iloc[index_lose,:]
#可以看到,缺失时间戳的那一行Behavior_type也是异常,因此决定丢掉这一行
data = data_origin.dropna(axis = 0)
#此时Timestamp列为科学计数法显示,将其改成整型
data[:,'Timestamp']=data['Timestamp'].astype(int)
data.reset_index(drop=True,inplace=True)
#时间戳列转换为日期、时间数据。并把日期和时间分为两列
data.loc[:,'Timestamp']=data['Timestamp'].apply(lambda x:time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(x)))
data.loc[:,'Date']=data['Timestamp'].apply(lambda x:x.split(' ')[0])
data.loc[:,'Time']=data['Timestamp'].apply(lambda x:x.split(' ')[1])
#删除时间戳列
data=data.drop(columns='Timestamp',axis=1)
#我们只取日期为2017-11-25到201