互聯網用戶行爲分析入門

對於計劃從事互聯網數據分析崗位的同學,尤其是應屆生,會學習Excel、Sql、Python,甚至Java、hadoop都有的去學習,但是用戶行爲分析是很多人都會遺漏的,而且可能都沒聽說過,往往在面試的時候被問到相關問題回一臉懵圈。這篇文章就是給應屆生或者計劃從事互聯網數據分析的同學在用戶行爲分析上入個門,知道如何去準備。

一.1個需求

先從一個需求說起,以京東會員爲例,假設下面的需求(數據是虛擬的)

現在每天購買京東Plus會員的用戶爲1千人,但是每天訪問Plus頻道的用戶高達10萬人,轉化率只有1%,
業務方(負責運營plus會員的同事)想分析一下,每天99%的用戶都是在哪裏流失的,找到其中的可能的原因,
可以針對性的做一下產品調整或者營銷方案,提高京東會員購買轉化率。

二.用戶行爲日誌

1.概念

用戶行爲,就是用戶在網站或者APP上所做的動作,比如:搜索內容,瀏覽頁面,觀看視頻,購買商品,收藏,評論等等。

2.三大特點

數據量大:佔比當前大數據存儲至少80%以上,瀏覽一個頁面至少產生幾KB字節數據

半結構化:每個頁面/按鈕的行爲數據是結構化,但是擴展參數比較個性,各不相同

不可改變:行爲一旦發生即已過去,不可變更(相對一筆訂單而言,從下單一直最後的退貨,狀態一直在變動的過程中)。

3.用戶行爲數據如何收集

收集用戶行爲數據的專業術語叫“埋點”,這個詞在工作過程中頻繁用到,需要記住。

埋點是在網站/APP中針對特定用戶行爲或事件進行捕獲、處理和發送的相關技術及其實施過程,技術實質,是監聽軟件應用運行過程中的事件,當需要關注的事件發生時進行判斷和捕獲。

收集用戶行爲數據一般是由數據分析師、數據產品經理提出埋點需求或者規劃,由前端開發工程師/app開發工程師進行實現。下圖就是蘑菇街網站的一個埋點數據。


4. 用戶行爲重點名詞解釋

Cookie

在客戶端記錄用戶身份的信息,實際上是一小段文本,有效期一般是一年。在數據分析中主要有2個作用,一個是在cookie中添加一些統計參數已滿足特殊業務場景需求,另外一個就是識別用戶身份(在用戶沒有登錄的情況下,都是通過Cookie中的唯一標識來區分用戶,統計訪客量)。

重要程度:五星

Cookie查看方式一般有2種:

1)谷歌瀏覽器=》鼠標右鍵=》檢查=》Network=》刷新當前頁面

2)通過Charles、Fiddler等專業抓包軟件

Session

在服務端記錄並確認用戶身份,有效期一般較短,保存在服務器上,在數據分析中一般用來跟蹤用戶來源,或者跟蹤訂單成交來源,還可以統計訪問次數(這個主要是在PC上統計),app端一般不根據這個統計,目前統計訪問次數更多的是根據2次打開之間的時間間隔。

Url

統一資源定位符,一個給定的獨特資源在Web上的地址;五部分組成(協議/域名/路徑/端口/參數);App中沒用url概念,一般用路由或者模塊名替代,而且IOS和Android不同。

重要程度:五星

在數據分析中主要是用來頁面分析漏斗分析。來看一個案例:

案例:https://list.mogu.com/book/trousers/50020?acm=3.mce.1_10_1pq5m.128038.0.enS7ZscGeR3IT.pos_872-m_600121-sd_119&ptp=31.v5mL0b.0.0.9HgY4AVC
協議:https
域名:list.mogu.com
路徑:/book/trousers/50020
端口:80(默認是80,不顯示)
參數1:acm=3.mce.1_10_1pq5m.128038.0.enS7ZscGeR3IT.pos_872-m_600121-sd_119
參數2:ptp=31.v5mL0b.0.0.9HgY4AVC

Refer

本質就是一個Url,是當前頁面的引薦頁面(上一步頁面),比如我從京東首頁點擊進去了京東會員頁面,京東會員頁面的的refer就是首頁。在數據分析中主要是用來做路徑分析、漏斗分析,像下圖的漏斗分析主要就是靠Url、Refer組合分析出來的。

重要程度:五星

抓包

將網絡傳輸發送與接收的數據包進行截獲、重發、編輯、轉存等操作(數據分析是查看),常用抓包工具:Charles、Fiddler、谷歌瀏覽器右鍵檢查,在數據分析中主要是查看某個頁面的需要埋點參數是否有,或者驗證開發工程師的埋點準確性,這點很重要,一般情況下開發都說已經完成埋點工作,但是沒有專門的測試同學對埋點進行測試,準確性有一定的誤差。

重要程度:五星

常用抓包工具:Charles、Fiddler、谷歌瀏覽器右鍵檢查。

三.如何解決京東這個需求

一般流程如下圖,要注意一點就是在數據統計分析出來之後反饋給需求方,這個一般情況下來回多次溝通反饋才能達到預期的結果,一輪一般搞不定。


  • 跟需求方明確需求,不要只是根據業務方的簡單文字需求就開工,一定要當面確認,很多情況下寫的比較簡單,業務方也沒想清楚
  • 體驗業務流程,這個非常重要,你要從用戶的角度來體驗,纔有可能根據數據現象發現一些潛在問題
  • 頁面信息收集,下面這些主要信息都要收集到
1、詳情頁Url:       
   https://plus.jd.com/index?flow_system=appicon&flow_entrance=appicon11&flow_channel=pc
   頁面路徑: https://plus.jd.com/index
2、訂單頁Url:
   https://plus.jd.com/order/page
3、詳情頁主要連接出口
   京東首頁: https://www.jd.com/
   我的京東: https://home.jd.com/
   權益介紹頁: https://plus.jd.com/right/index#item-coupon
4、這裏PC端相對好收集,APP端比較難,需要抓包(內部人員可以方便的獲取)

  • 查找數據源及數據字典
1、數據表名及數據字典(每個字段含義)
2、各層級粒度彙總表(可以大幅提升分析效率)
3、數據量級及分區鍵
4、Url後面參數含義(細分業務可能需要用到)
5、內部一般都會有元數據平臺的,直接跟老員工要相關信息,效率更高
  • 數據統計及分析,下面是幾段可能的sql統計,這種需求一般sql就能解決,不要python、java等代碼
#假設流量表名是dwd_pc_log
#到達詳情頁Top10來源
Select refer,count(*) pv
From dwd_pc_log
Where url=‘https://plus.jd.com/index’
Group by refer
Order by pv desc 
Limit 10

#從詳情頁出去的Top10頁面
Select url,count(*) pv
From dwd_pc_log
Where refer =‘https://plus.jd.com/index’
Group by refer
Order by pv desc 
Limit 10

#到付款頁面人數最高的前10頁面
select refer,count(*) uv
from (Select uid,refer from dwd_pc_log Where url=‘https://plus.jd.com/index’ Group by refer,uid) a
join( Select uid from dwd_pc_log Where url='https://plus.jd.com/order/page' Group by uid) b on a.uid=b.uid
group by refer
order by uv desc
 limit 10

  • 給需求方反饋結果,以下幾個注意點
1、在給業務方反饋時不能只給數據,要有建議和觀點
2、數據可讀性要強,如果你告訴他某個url頁面跳出率最高,是沒用的,要說到頁面名稱
3、數據分析邏輯性要強,建議和觀點有理有據
4、分析腳本、數據、結論都要存檔,後續複用概率非常高

四. 結束語

這篇文章主要目的是希望應屆生或者想入互聯網行業的分析師對用戶行爲分析有一個概念,然後根據這些概念再進行深入自學,這篇文章確實比較難寫,看起來也有一定難度,個人覺得寫的也一般,主要還是因爲當中涉及到了一些web技術和專業名詞。希望對大家能夠有所幫助,估計也會有很多疑問,希望各位看客可以留言討論。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章