日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

某宝移动端用户行为分析---PYTHON

發(fā)布時(shí)間:2024/3/26 python 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 某宝移动端用户行为分析---PYTHON 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1 數(shù)據(jù)來(lái)源說(shuō)明

數(shù)據(jù)來(lái)源:下載于天池?cái)?shù)據(jù)集–< User Behavior Data on Taobao App> https://tianchi.aliyun.com/dataset/dataDetail?dataId=46
這份數(shù)據(jù)是15年天池大賽的比賽數(shù)據(jù),內(nèi)容包括了14年雙十一之后到雙十二結(jié)束這段時(shí)間內(nèi)用戶的行為痕跡,共6個(gè)指標(biāo)12256906個(gè)用戶,本文將使用PYTHON對(duì)整體用戶購(gòu)物情況進(jìn)行分析。
數(shù)據(jù)指標(biāo)說(shuō)明如下表:

columndescription
user_id用戶身份,脫敏
item_id商品id,脫敏
behavior_type用戶行為類型(包括點(diǎn)擊,收藏,加購(gòu)物車和付款四種行為,相應(yīng)的值分別為1,2,3和4。)
user_geohash地理位置
item_category品類ID(商品所屬的品類)
time用戶行為發(fā)生的時(shí)間

2 研究目標(biāo)

  • 基本數(shù)據(jù)統(tǒng)計(jì)
    總PV、總UV、有購(gòu)買行為的用戶數(shù)量、復(fù)購(gòu)率、跳失率

  • 用戶行為轉(zhuǎn)化漏斗
    點(diǎn)擊–收藏–加購(gòu)物車–支付各環(huán)節(jié)轉(zhuǎn)化率如何?

  • 購(gòu)買次數(shù)占前80%的品類有多少?

  • 從時(shí)間維度了解用戶的行為習(xí)慣
    每天的PV、UV

3 數(shù)據(jù)預(yù)處理

3.1數(shù)據(jù)抽樣

導(dǎo)入數(shù)據(jù),看看數(shù)據(jù)的具體情況

import pandas as pd data=pd.read_csv(r'E:\DATA\tianchi_mobile_recommend_train_user.csv') print(data.head()) data.info() print(data.describe())


由于數(shù)據(jù)較為龐大,進(jìn)行抽樣處理–隨機(jī)抽樣
抽取100萬(wàn)條數(shù)據(jù)

#隨機(jī)、可放回抽樣 data=data.sample(n=10000,replace=True,axis=0) data.to_csv(r"E:\DATA\user.csv")

3.2 數(shù)據(jù)清洗

數(shù)據(jù)一致化處理
通過(guò)查看數(shù)據(jù)可得知,time字段的時(shí)間包含年-月-日和小時(shí),為方便分析,將該字段分為2個(gè)字段:一個(gè)日期列,一個(gè)小時(shí)列
用Excel實(shí)現(xiàn) 將該字段的小時(shí)列刪除,將數(shù)據(jù)名字保存為user_

#將數(shù)據(jù)處理為時(shí)間格式 data=pd.read_csv(r'E:\DATA\user_.csv') data['time']=pd.to_datetime(data['time'])

缺失值處理
user_geohash地理位置列,多數(shù)為NULL,且信息被加密處理,后面便不做地理位置的研究。

數(shù)據(jù)處理,將行為提取

#將behavior_type的四種行為類型分別用1,2,3,4代表,為方便查看現(xiàn)將數(shù)字轉(zhuǎn)為pv,collect,cart,buy data.loc[data['behavior_type']==1,'behavior_type']='pv' data.loc[data['behavior_type']==2,'behavior_type']='collect' data.loc[data['behavior_type']==3,'behavior_type']='cart' data.loc[data['behavior_type']==4,'behavior_type']='buy'

4 整體用戶購(gòu)物情況

4.1 基礎(chǔ)數(shù)據(jù)統(tǒng)計(jì)

4.1.1 計(jì)算PV

pv(總訪問(wèn)量)為:942396 PV即Page View, 即頁(yè)面瀏覽量或點(diǎn)擊量,用戶每次刷新即被計(jì)算一次。

print(data.groupby(['behavior_type']).count())
4.1.2 計(jì)算UV

UV(用戶總數(shù)):9869 UV(獨(dú)立訪客):即Unique Visitor,訪問(wèn)您網(wǎng)站的一臺(tái)電腦客戶端為一個(gè)訪客。00:00-24:00內(nèi)相同的客戶端只被計(jì)算一次。

print(data.drop_duplicates('user_id').count())
4.1.3計(jì)算有購(gòu)買行為的用戶數(shù)

有購(gòu)買行為的用戶數(shù):3595

data2=data[data['behavior_type']=='buy'] print(data2.drop_duplicates('user_id').count())
4.1.4 計(jì)算重復(fù)購(gòu)買率

復(fù)購(gòu)率=65.7% 復(fù)購(gòu)率=購(gòu)買2次或以上的用戶/購(gòu)買用戶總數(shù)

data3=data[data['behavior_type']=='buy'] df=data3.groupby('user_id').count() df[df['behavior_type']>=2].count() print(2362/3595)

4.2 分析用戶行為習(xí)慣----時(shí)間維度

4.2.1 每周的用戶行為數(shù)量變化趨勢(shì)


可以看到,周一到周二的用戶行為逐漸增加,周二-周四達(dá)到一個(gè)穩(wěn)定值,周四到-周六用戶行為明顯減少,周六為一周最低,周六后開(kāi)始逐漸增加。

data['time1']=[i.weekday() for i in data['time']] df1=data.groupby('time1').count() df1.index=[1,2,3,4,5,6,7]import matplotlib.pyplot as plt import numpy as np import matplotlib.dates as mdate fig=plt.figure(figsize=(20,6)) plt.rcParams['axes.unicode_minus'] = False plt.rcParams['font.sans-serif']=['SimHei'] #顯示中文標(biāo)簽 plt.xticks(df1.index) ax=fig.add_subplot(111) ax.plot(df1.index,df1['user_id'])
4.2.2 日PV


結(jié)論:在12月份開(kāi)始,用戶行為逐漸有增多趨勢(shì),尤其在12月9日開(kāi)始,用戶行為明顯高于其他時(shí)期,這幾天用戶行為增多是因?yàn)樘詫毜摹半p十二”活動(dòng)。

data1=data[data['behavior_type']=='pv'] day_pv=data1.groupby(['time']).count() print(day_pv)

#可視化 import matplotlib.pyplot as plt import numpy as np import matplotlib.dates as mdatedata1=data[data['behavior_type']=='pv'] day_pv=data1.groupby(['time']).count() day_pvfig=plt.figure(figsize=(20,6)) plt.rcParams['axes.unicode_minus'] = False plt.rcParams['font.sans-serif']=['SimHei'] #顯示中文標(biāo)簽 plt.title(u'每天PV圖') ax=fig.add_subplot(111) ax.xaxis.set_major_formatter(mdate.DateFormatter('%Y-%m-%d')) plt.xticks(pd.date_range(day_pv.index[0],day_pv.index[-1],freq='D'),rotation=45)#用來(lái)正常顯示中文標(biāo)簽 plt.rcParams['axes.unicode_minus']=False ax.plot(day_pv.index,day_pv['user_id'])
4.2.3 日UV

結(jié)論:用戶總數(shù)變化趨勢(shì)與PV量變化趨勢(shì)類似,周末的數(shù)量逐漸增加,到工作日又逐漸降低。在雙十二期間,用戶總數(shù)明顯上升,活動(dòng)過(guò)后,人數(shù)明顯下降至平穩(wěn)狀態(tài)。

day_uv=data.groupby('time')['user_id'].nunique() day_uvfig=plt.figure(figsize=(20,6)) plt.rcParams['axes.unicode_minus'] = False plt.rcParams['font.sans-serif']=['SimHei'] plt.title(u'每天UV量') ax=fig.add_subplot(111) ax.xaxis.set_major_formatter(mdate.DateFormatter('%Y-%m-%d')) plt.xticks(pd.date_range(day_uv.index[0],day_uv.index[-1],freq='D'),rotation=45)#用來(lái)正常顯示中文標(biāo)簽 plt.rcParams['axes.unicode_minus']=False ax.plot(day_uv.index,day_uv)
4.2.4 購(gòu)買轉(zhuǎn)化率

轉(zhuǎn)化率=1.06%
用戶行為轉(zhuǎn)化漏斗如下圖

結(jié)論:用戶點(diǎn)擊后,收藏或者加購(gòu)物車的概率在5%左右,而最后真正的購(gòu)買率在1%,已經(jīng)收藏或者加購(gòu)物車到最終購(gòu)買的轉(zhuǎn)化率為21.03%,購(gòu)買轉(zhuǎn)化率很低,后面可以采取活動(dòng)提高購(gòu)買轉(zhuǎn)化率。

pv_count=data[data['behavior_type']=='pv'].count() buy_count=data[data['behavior_type']=='buy'].count() pv_to_buy=buy_count/pv_count print(pv_to_buy)

pv_num=data[data['behavior_type']=='pv']['user_id'].count() collect_num=data[data['behavior_type']=='collect']['user_id'].count() cart_num=data[data['behavior_type']=='cart']['user_id'].count() buy_num=data[data['behavior_type']=='buy']['user_id'].count() far_num=collect_num+cart_numdata1={'環(huán)節(jié)':['pv','far','buy'],'人數(shù)':[pv_num,far_num,buy_num]} frame=pd.DataFrame(data1) frame#計(jì)算單環(huán)節(jié)轉(zhuǎn)化率 temp1=np.array(frame['人數(shù)'][1:]) temp2=np.array(frame['人數(shù)'][0:-1]) temp1,temp2 single_convs=temp1/temp2 single_convs=list(single_convs) single_convs.insert(0,1) single_convs=[round(x,4) for x in single_convs] frame['單一環(huán)節(jié)轉(zhuǎn)化率']=single_convs#求總體轉(zhuǎn)化率 temp3=np.array(frame['人數(shù)']) temp4=np.ones(len(frame['人數(shù)']))*frame['人數(shù)'][0] total_convs=list(temp3/temp4) total_convs=[round(x,4) for x in total_convs] frame['總體轉(zhuǎn)化率']=total_convs frame#繪制漏斗圖 from pyecharts import Funnel attrs=frame['環(huán)節(jié)'].tolist() attr_value=(np.array(frame['總體轉(zhuǎn)化率']*100)).tolist()funnel1=Funnel("總體轉(zhuǎn)化漏斗圖",width=400,height=200,title_pos='center') funnel1.add(name='商品交易環(huán)節(jié)',attr=attrs,value=attr_value,is_label_show=True,label_formatter='ozvdkddzhkzd%',label_pos="inside",legend_orient='vertical',legend_pos='left', is_legend_show=True) funnel1.render('文件路徑')

4.2.5 品類銷售次數(shù)TOP10
df=data[data['behavior_type']=='buy'] print(df.groupby('item_category').count().sort_values('user_id',ascending=False))

結(jié)論:購(gòu)買次數(shù)最多的品類是6344,購(gòu)買次數(shù)為162.

5 總結(jié)

  • 大部分用戶的主要活躍時(shí)間段為9:00-22:00,其中18:00-22:00開(kāi)始逐漸增加,達(dá)到一天之中的頂峰。每周的主要活躍時(shí)間為周二至周四,運(yùn)營(yíng)人員可根據(jù)活躍時(shí)間進(jìn)行相關(guān)的活動(dòng)。
  • 收藏或者加購(gòu)物車的概率在5%左右,而最后真正的購(gòu)買率在1%,購(gòu)買轉(zhuǎn)化率與行業(yè)的標(biāo)準(zhǔn)進(jìn)行比較,后面可以采取活動(dòng)(用戶細(xì)分,轉(zhuǎn)化路徑細(xì)查)提高購(gòu)買轉(zhuǎn)化率。
  • 針對(duì)不同品類的購(gòu)買轉(zhuǎn)化率采取不同的策略,提高已購(gòu)品類的轉(zhuǎn)化率,一方面,對(duì)未被購(gòu)買的品類進(jìn)行分析,找出原因,促成購(gòu)買。
  • 總結(jié)

    以上是生活随笔為你收集整理的某宝移动端用户行为分析---PYTHON的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。