本文是數據分析入門課程的畢業項目,我選的題目是電商購物平臺母親節禮品特征分析。
前言
分析背景
不知道大家有沒有感覺到給老人送禮是個難事,也是門學問。出于好奇心和孝心,想對電商購物平臺母親節禮品的購買數據進行分析,找出一些數據指標,比如:價格,銷量,類別等。從而找到大家買得較多較好的禮品類目,指導未來為老人送禮的購買決策。-
所需解決的問題
- 主要有哪幾類經常送老人的禮物?
- 在某一個大類產品中,可以細分為哪些具體的產品?
- 銷量前十的產品有哪些?
- 銷量前十的產品的品牌有哪些?
- 銷量和價格是否存在一定的關系?
數據集描述
本項目使用的數據都是通過八爪魚抓取的天貓上的數據。這里選取了三類商品,分別是老人按摩類商品、老人醫療及健康服務類商品、老人手機。因此數據集由這三類商品構成。收集了商品的標題、價格、品牌、月銷量、累計評價、商品名稱等信息。
遇到的問題:天貓對爬蟲軟件有限制,導致無法一次抓取到全部數據。最后采用了一個workaround,因為八爪魚里第二頁搜索結果抓不全(似乎天貓的防抓取規則是通過計時間來完成的),重新從第二頁開始抓取數據(指定打開的網頁從第二頁開始)。八爪魚的使用不在本文的討論范圍。
方法論
做這個畢業項目,主要的方法論是根據Tiger提供的數據分析(Data Analytics)套路。
項目步驟
- 數據獲?。和ㄟ^八爪魚抓取天貓的數據。
- 數據清洗:整理數據,將不規范的數據規范化,缺失的數據補齊。
- 數據分析和可視化:確定數據指標,并將分析結果可視化。
- 商業洞察和最終的分析報告。
數據清洗
因為抓取的按摩產品數據包括很多商品,比如:按摩椅、腿部按摩器等。而標題并不能完全反映出商品名稱,手動處理,添加商品名稱列。產品名稱和型號個人感覺作用不大,抓取的數據很多有誤,決定拋棄這兩列數據。
其他數據清洗包括:去掉重復數據,填充數據。
df = pd.read_excel(data, 'All')
df.drop_duplicates()
# 填充空值
df['促銷價格'] = df['促銷價格'].fillna(df['價格'])
df['價格'] = df['價格'].fillna(df['促銷價格'])
df['累計評價'] = df['累計評價'].fillna(0)
數據分析和可視化
- 按摩類產品之按摩椅
按照累計評價降序排列,找出前十個產品:
按照月銷量降序排列,找出前十個產品:
結論:大部分按摩椅的價格小于10000。10000-50000之間占很小的部分。最高價格接近50000。其中,價格在5000左右的占比最高。
大部分按摩椅的累計評價也就是累計銷量都小于1000。1000-4000的數量非常少。
- 按摩類產品之按摩床墊
按照累計評價降序排列,找出前十個產品:
按照月銷量降序排列,找出前十個產品:
結論:按摩床墊價格比較便宜,大部分價格小于275。價格在200-212之間占比最高。大部分按摩床墊的累計銷量都小于2000,大于10000的很少。
- 其他按摩產品
按照累計評價降序排列,找出前十個產品:
按照月銷量降序排列,找出前十個產品:
結論:其他按摩產品的大部分價格都小于750,價格小于125的占比最高。大部分累計銷量小于2000。
- 按摩類產品總的分析
結論:最受歡迎的按摩產品是按摩椅,數量占總數據量的65.69%,其次是其他類按摩產品,數量占總數據量的28.43%。在其他類按摩產品中,最受歡迎的是腿部按摩器,數量占總數據量的34.48%, 其次是手持按摩器,數量占總數據量的22.41%,第三是腳步按摩器,數量占總數據量的20.69%。
- 醫療健康類產品之體檢卡
按照累計評價降序排列,找出前十個產品
按照月銷量降序排列,找出前十個產品
結論:體檢卡的價格大部分小于1500,最多集中在1000左右。1500-2500的較少,大于2500的更少。累計銷量大部分小于250。累計評價前十的體檢卡機構瑞慈占50%,普惠和愛康國賓占20%,慈銘占10%。
- 醫療健康類產品之其他產品
結論:醫療健康類產品之其他產品的價格大部分小于100,累計評價大部分小于10。從餅圖中可以看出高血壓慢性病管理服務占60%,心理咨詢占40%。
- 手機
按照累計評價降序排列,找出前十個產品
按照月銷量降序排列,找出前十個產品
結論:老人手機大部分價格小于1000,價格更多集中在小于500的范圍內。累計銷量大部分小于25000。從餅圖中看出,累計銷量前十的老人手機品牌,第一的是尼凱恩,占30%,第二是小米,占20%,紐曼、諾基亞、中興、天語、優思各占10%。從散點圖中看出,銷量較好的手機價格都小于1000。但并不能看出銷量和價格之間確定的關系。
分析結論
按摩產品受歡迎程度:按摩椅 > 腿部按摩器 > 手持按摩器 > 腳步按摩器
如果為老人選購按摩產品的話,首選是按摩椅。具體買哪一種按摩椅可以參考按累計評價排名前十的按摩椅。而參考月銷量排名前十的按摩椅可以看到近期的一個趨勢。醫療健康類產品中體檢卡的銷量不高,說明人們還是很少在電商購物平臺購買這類產品。其中健康服務類:高血壓慢性病管理服務和心理咨詢的銷量就更少。這是新興的網購產品,高血壓在老人中還是非常普遍的。也許未來可以擴大醫療健康類產品的市場,人們在電商購物平臺可以方便地購買各類產品將成為一個趨勢。
幾個體檢機構瑞慈,普惠,愛康國賓和慈銘也可以指導我們在線下的購買體檢卡的決策。受歡迎的老人手機價格比較便宜,受歡迎的有這幾個品牌:尼凱恩,小米,紐曼,諾基亞,中興,天語,優思。非智能手機依然占有很大的比重。智能手機廠家也可以努力開拓老人智能手機市場。未來智能手機成本越來越低,必將占領老人手機市場。
個人認為送老人手機也是個不錯的選擇。具體買哪一種手機可以參考按累計評價排名前十的手機。
其他思考
- 對爬蟲工具的使用不熟練,導致數據選取得較少。但是按照銷量選取了排名靠前的數據,基本反應了真實的情況。有些數據無法抓取到,比如商品評分。
- 數據分析經驗的缺乏會導致對數據的解讀不夠深刻。
主要參考資料
- Tiger數據分析入門課程的資料和作業
- 余博文章:獨家!完整到爆的數據分析流程剖析
感謝
首先要感謝Tiger和余博的幫助,以及社群中其他朋友的幫助。這個社群為大家營造了積極向上的學習數據分析的環境,牛人很多,我也學到了很多。如果沒有之前的積累,沒有認真上課和做作業,這個項目也無法完成。
感謝張潔同學參與了項目選題的討論。