Python 淘宝用户双十二行为分析

目录

项目背景:

一、认识数据

二、处理数据

三、数据分析及可视化

3.1 用户访问行为分析

3.1.1 日访问量

3.1.2 小时访问量

3.2用户消费行为分析

3.2.1用户总购买次数分析

3.2.2每日人均购买次数分析

3.2.3每日付费率分析

3.2.5用户复购率分析

3.2.6用户消费间隔分析

3.3漏斗流失分析

3.4用户价值RFM分析

3.4.1 R值分析

3.4.2 F值分析

3.4.3 整合R和F 

3.5商品类别与流失率的关系分析

3.5.1 点击-加购环节 

3.5.2 加购-购环节

3.6商品种类的二八定理分析

四.总结


项目背景:

淘宝是阿里巴巴集团旗下的一款移动商务平台产品,是中国深受欢迎的网购零售平台,拥有近5亿的注册用户数,每天有超过6000万的固定访客,同时每天的在线商品数已经超过了8亿件,平均每分钟售出4.8万件商品。庞大的用户量和销售量决定了淘宝拥有非常丰富的用户行为数据,在这个数字经济的时代下,拥有数据且有效运用数据是推动产品运营效果提升的关键要素。

此次项目的数据集来源于2014年双十二期间,阿里巴巴移动商务平台上真实的用户商品行为数据,通过对行业的关键指标进行多维度分析,从而探索淘宝用户的行为模式,致力于为产品的运营和营销提供数据决策基础。

一、认识数据

user_id:用户名
item_id:商品名
behavior_type:用户行为类型(1:点击,2:加购,3:收藏,4:支付)
user_geohash:用户地理位置
item_category:商品种类
time:用户操作时间

#导入包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt 
#导入数据
df=pd.read_csv("tianchi_mobile_recommend_train_user.csv")
#查看数据
df.head()

 

df.info()
#数据有1225万条,6个字段,user_geohash,time列数据类型为object,后续需要进行更改

 

df.describe()
#查看数据描述性分析

 

二、处理数据

#统计重复值
df.duplicated().sum()

结果显示4092866条重复数据

#有大量重复数据,需要对其进行删除,并替换原数据
df.drop_duplicates(inplace=True)
df.info()
# 数据只剩816万,400多万条重复数据已删除

 

#缺失值
df.isna().sum()

 

#缺失值集中在user_geohash列,而且数据量很大,考虑将该列删除
df.drop(columns='user_geohash',inplace=True)
df.info()
#数据列只剩5

#time列包含日期和小时两种信息,考虑将其拆分,日期和时间段作为两个分析维度
df['date']=df['time'].str.split(' ').str[0]#新建date列,存放time列中的日期信息

df['hour']=df[time].str.split(' ').str[1]#新建hour列,存放小时数据
# split函数只能用于字符串,先将time列转换为str格式

df.info()
#需要更改列的数据类型
df['time']=pd.to_datetime(df['time'])
df['date']=pd.to_datetime(df['date'])
df['hour']=pd.to_numeric(df['hour'])

df.info()
#数据类型转换成功

df.head()

三、数据分析及可视化

3.1 用户访问行为分析

3.1.1 日访问量

pv_daily=df.groupby('date')['用户名'].count()#选择任意列计数
pv_daily

# uv
# uv对于多次访问网页的同一用户不进行重复计数
uv_daily=df.groupby('date')['用户名'].apply(lambda x:x.drop_duplicates().count())
uv_daily

#可视化
#构建画布,将画布划分两行一列子区域
flg=plt.figure()
axes=flg.subplots(2,1)

#绘制条形图
pv_daily.plot(ax=axes[0],title='pv_daily')
uv_daily.plot(ax=axes[1],title='uv_daily')

plt.show()

 

小结及建议:
1.可以看出pv与uv的最大值均出现在12.12当天,说明双十二促销活动取得一定的引流效果
2.pv与uv变化趋势大体一致,结合主观经验可以认为uv变化使得pv变化
3.因此对于平台来说,比起促进同一用户访问多次页面,更重要的是吸引更多用户,增加uv从而增加pv
4.pv和uv趋势相似,但pv数据量要更大,说明同一用户在同一天内会访问页面多次

3.1.2 小时访问量

pv_hour=df.groupby('hour')['用户名'].count()#分组依据为hour
pv_hour

# uv
uv_hour=df.groupby('hour')['用户名'].apply(lambda x:x.drop_duplicates().count())
uv_hour

#构建画布,将画布划分两行一列子区域
flg=plt.figure()
axes=flg.subplots(2,1)

#绘制条形图
pv_hour.plot(ax=axes[0],title='pv_hour')
uv_hour.plot(ax=axes[1],title='uv_hour')

plt.show()

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值