数据集:https://tianchi.aliyun.com/dataset/dataDetail?dataId=46
字段
user_id:用户身份
item_id:商品ID
behavior_type:用户行为类型(点击、收藏、加购物车、支付,分别用数字1、2、3、4表示)
user_geohash:地理位置
item_category:品类ID(商品所属品类)
time:用户行为发生时间
电商常用方法
用户行为分析:日访问量分析、小时访问量分析、不同行为类型用户PV(总浏览量点击量)、UV(不同用户的总点击量)分析
用户消费行为分析:用户购买次数情况分析、同一时间段用户消费次数分布日、
ARPPU(平均每付费用户收入,可通过总收入/APA活跃付费用户数算出)、
日ARPU(平均每用户收入,可通过总收入/AU活跃用户(DAU、WAU、MAU日/周/月活跃用户)算出)、
PUR(付费比率,可通过APA活跃付费用户数/AU活跃用户数算出)
【游戏:DNU每日游戏新登入用户数、AU活跃用户、PU付费用户、ARPU平均每用户收入、ARPPU平均每付费用户收入、PUR付费比率、LTV生命周期价值,即平均一个用户在首次到最后一次登录游戏内为游戏创造的收入总计】
复购情况分析:所有复购时间间隔消费次数分布、不同用户平均复购时间分析
漏斗流失分析:流程式数据分析,反映各阶段用户转化率情况
用户行为与商品种类关系分析:不同用户行为类型的转化率、不同用户行为类型的感兴趣率
二八理论分析
用户价值度RFM模型分析
导入数据
data_user = pd.read_csv('tianchi_mobile_recommend_train_user.csv',dtype = str)#因为不需要计算
若数据过大 内存不够 可用sample函数取样
数据清洗
缺失值分析
data_user.apply(lambda x:sum(x.isnull())/len(x))
只有geohash有缺失值 因为分析用不上地理位置 所以可以不作处理
拆分日期
data_user['date'] = data_user['time'].str[0:10]
data_user['hour'] = data_user['time'].str[11:]
data_user['date'] = pd.to_datetime(data_user['date'])
data_user['time'] = pd.to_datetime(data_user['time'])
data_user['hour'] = data_user['hour'].astype(int)
data_user.sort_values(by='time',ascending=True,inplace=True)
data_user.reset_index(drop=True,inplace=True)#重置索引
data_user.describe(include='a