淘宝用户行为分析
1.1背景信息
因双12活动结束,分析双12活动用户购买行为,后续可以结合更多节假日时机复制双12活动制造流量热点
1.2数据信息
说明:数据为淘宝APP2014年11月18日至2014年12月18日的用户行为数据,共计6列字段
来源:阿里天池项目数据集
字段:
user_id:用户身份,脱敏
item_id:商品ID,脱敏
behavior_type:用户行为类型(包含点击、收藏、加购物车、支付四种行为,分别用数字1、2、3、4表示) user_geohash:地理位置
item_category:品类ID(商品所属的品类)
time:用户行为发生的时间
正文开始:
数据分析思维导图:
导入数据:
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
#饼图显示中文名字不乱码
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
data = pd.read_csv('D:/jupyter/dataset1855/淘宝用户行为.csv')
数据清洗加工:
1.查看重复值
data.duplicated().sum()
2.删除重复值
data.drop_duplicates(inplace=True)
3.查看缺失值数量(将列中为空的个数统计出来)
data.isnull().sum()
4.缺失值集中在用户地理信息列.删除缺失值
del data['user_geohash']
5.时间字段分列time拆分成date和hour,以便后面统计
data['date'] = pd.to_datetime(data['time']).dt.date
data['hour'] = data.time.str.split(' ').str[1]
del data['time']
6.数据类型转换
for i in data.columns[:2]:
data[i]=data[i].astype('str')
data['date']=pd.to_datetime(data.date)
data['hour']=data.hour.astype('int')
7.查看数据类型
data.info()
8.数据整理,并另存
#时间排序
data = data.sort_values(by=['date','hour'])
#数据清洗后重置索引
data = data.reset_index(drop=True)
#将清洗后的数据另存,以便以后调用
data.to_csv('D:/jupyter/dataset1855/淘宝用户行为数据清洗后.csv')
数据分析:
读取数据
#读取清洗后数据
data = pd.read_csv('D:/jupyter/dataset1855/淘宝用户行为数据清洗后.csv')
1.流量指标分析:
1.1日流量指标(根据日期统计点击的用户访问数量)
观察图表可以看出访问量和访问数在爬升,在双12期间达到峰值,可见双12活动效果显著
#访问量
pv_day = data[data.behavior_type==1].groupby('date').count()['user_id'].reset_index(