python轮胎_如何用数据分析方法剖析途虎轮胎数据
前言
本次分析只是用途虎養車網案例分享數據學習方法和方法論,禁止用作商業目的,同時聲明數據與關鍵指標未必真實有效。
概述
筆者將通過以下環節,展示整個過程。
涉及知識:
結構化思維,描述性分析,探索性分析,相關性分析,python數據采集,python和mysql數據清洗,python、Excel和Tableau數據可視化
分析流程:
第一部分:需求分析/定義目標
數據分析的第一步也是最關鍵的一步,就是“如何將一個抽象的命題拆分為一個可量化的命題”,所謂量化管理。
1.1 思考命題
命題:分析途虎養車網品牌輪胎銷售數據
問題1:為什么要分析這個命題,可以解決什么問題,能帶來什么價值?
答:命題來源于這樣一個假設,如果公司想模仿途虎做一個自營電商平臺,也銷售品牌輪胎,我能夠提供什么建議。
本案例,筆者分析的目標公司是途虎養車,截止目前為止已獲得D輪融資,是汽車后市場B2C自營電商的唯一的第一梯隊,本命題通過分析其輪胎銷售數據,更深入的挖掘用戶偏好,銷量分布,營收分布,價格分布。如果有需要,還可以結合做行業分析,對比綜合電商京東和天貓,做一個更宏觀主題分析。
問題2:因變量是什么,自變量是什么
答:自營電商就是要盈利,而盈利需要通過銷量,價格和成本獲得,此處成本不可獲取,因此因變量定義為營收、銷量和價格。
影響銷量因素有很多,如會員活動和社區活動,影響價格的因素也有很多,主要有成本導向定價和需求導向定價,此處上述因素均不可獲取,只有產品本身屬性數據,因此自變量定義為產品本身的屬性,即輪胎品牌,產品規格,載重指數,速度級別,輪胎類型,輪胎花紋,是否缺氣保用等。
最后轉化為以下具體的問題
1 哪些品牌銷售市場更好,其輪胎屬性優先度如何。2 途虎銷售數據,品牌貢獻度如何,是否存在二八定律。
3 哪些品牌營收數據更好,其輪胎屬性優先度如何。
4 途虎營收數據,品牌貢獻度如何,是否存在二八定律。
5 途虎價格數據,各品牌價格分布如何,價格區間分組分布。
6 用戶消費水平是怎樣的,品牌消費區間分布如何。
7 途虎品牌輪胎,按照銷量和營收分群分析。
8 途虎品牌輪胎, NMPS分類分析。
9 影響平臺營收、銷量、獲得評分的因素有哪些,排序如何。
10 根據銷量,價格,評分對途虎輪胎ID聚類分析。
1.2 結構化拆分命題
結構化拆分是將與事物有關的各個事件,按照層級關系,以樹狀圖的形式表現出來的一種工作方式。其拆分原則是,各事件之間相互獨立,事件拆分至最小粒度為止,拆分分析層次和顆粒度不同,分析價值也存在差異。
1.2.1 描述性分析
描述性數據分析類似于用一些特征去概括事物,包含集中趨勢分析和離中趨勢分析。
前者研究的是數據的集中程度,主要包含平均數、中位數、眾數、四分位數、標準差和變異系數。后者研究的是數據的離散程度,主要包含極距、四分位距、方差、標準差、標準分、均方誤差、均方根值、均方根誤差和變異系數。
此外,還可以通過繪制核密度曲線,觀察數據分布形狀是左偏,右偏,或是正態。
問題:哪些指標是最關鍵的指標
答:營收、銷量和價格。
1.2.2 探索性分析
探索性分析師結合數學或業務模型,發現數據隱形存在的規律。本報告模擬電商行業RFM模型提出品牌分群分析和NMPS分析,試圖從多維度對品牌輪胎分群處理。
問題:維度是什么
答:營收、銷量、價格和評分。
1.2.3 相關性分析
相關性分析分為兩個部分:
一是銷量/營收/價格相關性分析,二是銷量/營收與均值價格關系。
因變量選擇
因變量1:營收 = 單一途虎ID價格 * 單一途虎ID銷量
因變量2:銷量
因變量3:價格
選取營收作為因變量,目的在于找出哪些自變量與營收呈現正相關,相關程度如何,投資回報率最大。
選取銷量作為因變量,目的在于找出哪些自變量與銷量呈現正相關,從而有利于品類存儲和品類營銷。
選取價格作為因變量,目的在于找出輪胎哪些屬性與價格呈現正相關,從而幫助產品定價。
自變量處理
輪胎屬性數據屬于分類變量,二維數據已0/1數據變換,多維分類數據已one-hot編碼虛擬變量變換,數值型數據已均值標準化。
計算相關系數矩陣
矩陣因變量和自變量之間的相關系數已通過斯皮爾曼相關系數獲得。
第二部分:數據獲取
根據第一部分因變量和自變量數據,通過python采集數據
2.1 爬蟲層次結構
2.2 爬蟲代碼
此處省略
2.3 爬蟲結果
第三部分:數據預處理
3.1 數據集成
數據集成就是將不同來源的數據匯集在一起,統一不同來源數據的矛盾之處和刪除冗余數據
''' 數據集成的意思是將不同來源的數據匯集在一起,放在同一個地方,如數據倉庫的過程 ''' tuhu_df = pd.DataFrame() tuhu_part01 = pd.read_csv(open(r'E:點評數據途虎輪胎價格爬蟲原始數據_part01.csv',encoding='utf8')) tuhu_part02 = pd.read_csv(open(r'E:點評數據途虎輪胎價格爬蟲原始數據_part02.csv',encoding='utf8')) tuhu_part03 = pd.read_csv(open(r'E:點評數據途虎輪胎價格爬蟲原始數據_part03.csv',encoding='utf8')) tuhu_part04 = pd.read_csv(open(r'E:點評數據途虎輪胎價格爬蟲原始數據_part04.csv',encoding='utf8')) tuhu_list = [tuhu_part01,tuhu_part02,tuhu_part03,tuhu_part04] tuhu_df = tuhu_df.append(tuhu_list,ignore_index=True) tuhu_df.head(3)3.2 數據規約
數據規約包含屬性規約和數值規約,就是創建新屬性維數,刪除非必要維數降維。
本報告結合業務,還需處理的特征是品牌、規格尺寸、載重指數、速度級別和評分字段
3.2.1 brand特征
brand數據,“/”前面的數據就是品牌數據
# brand # 看一下品牌有多少種品牌數據 print(len(tuhu_data.brand.unique())) tuhu_data.brand.value_counts()3.2.2 guige特征
根據業務經驗規格尺寸是由橫截面寬度,高寬比,R,輪胎內經尺寸組成的,此處數據規約時新增三個特征
''' 輪胎規格 = 橫截面寬度+高寬比+R+輪胎內徑尺寸 # 根據這個定義,可以增加三個字段,由于R和"/"是篩選字段的數據,先觀察一些沒有這兩個標志的數據有多少 '''3.2.3 speed_level特征
''' 根據業務知識可知,速度級別也是分類數據,前面英文字母代碼是其分類標志 ''' # 先查看總計有多少種標志 print('速度級別總計有多少個',len(tuhu_data.speed_level.unique())) tuhu_data.speed_level.value_counts()3.2.4 score特征
根據途虎網站評分機制,評分特征“/”前面的數據即是評分值
tuhu_data['score'] = tuhu_data['score'].map(lambda x:x.split('/')[0])3.2.5 新增特征
3.3 數據清洗
數據清洗主要包含去重、缺失值處理和異常值處理。首先需要結合業務知識定標準,什么是重復值,什么是缺失值,什么是異常值,還可以結合業務系統和流程設計分析缺失值和異常值產生原因,最后改善數據質量。
缺失值和異常值篩選出來后,需要給出處理方法,主要但不限于不處理,剔除,網絡采集,第三方采集和數據插補。
3.3.1 去重
'' 在數據清洗過程中,發現存在重復數據,需要去重 '''3.3.2 數據類型觀測和轉換
3.3.3 描述性統計分析
3.3.4 缺失值觀測和處理 # 缺失值觀測 tuhu_data.isnull().sum()# 缺失值處理 ''' 以上數據可知輪胎是特點存在缺失數據,且數據只有缺氣保用輪胎和非缺氣保用輪胎的差別, 因此對此類數據進行二值變換,1表示缺氣保用,0表示非缺氣保用,這里先不替換 '''3.3.5 異常值觀測和處理
(1)通過簡單統計分析:通過最大最小值判斷,變量取值是否在合理范圍內。(2)3σ原則(正態分布):95.4%數據在距離均值2個標準差范圍內。
(3)箱型圖分析:箱型圖提供了識別異常值的一個標準。正常值介于(Q1 -1.5IQR,
Q3+1.5IQR),Q1 稱為下四分位數,Q3 稱為上四分位數;IQR稱為四分位數
間距,IQR=Q3-Q1,正常值之外的,即是異常值。
以上數學分析方法,結合業務經驗判斷是否為離群點,以及離群點分析
# 獲取異常值數據,結合業務經驗評估數據是否異常 ''' 找出所有品牌異常值索引,便于篩選此類數據 '''根據描述統計分析可知,輪胎價格最高是8888,根據業務經驗,這種價格存在的,但比較少見。 一般只存在于蘭博基尼和勞斯萊斯等超高端豪華車,且改價格條件下,規格一般更高。此處,暫不做數據刪除。
3.4 數據存儲
3.5 數據變換
數據變換包含簡單數據變化,規范化,連續屬性離散化。
簡單數據變換是對原始數據進行函數處理,比如說甲方和l對數運算,規范化主要是離差標準化、0-均值標準化、小數定標規范化,連續屬性離散化是對數據分群處理。
本報告采用0-均值規范化
第四部分:數據分析
1 哪些品牌銷售市場更好,其輪胎屬性優先度如何。
-- 哪些品牌銷售市場更好 SELECT brand,SUM(numper) AS total_sales FROM tuhu_price_tbl GROUP BY brand ORDER BY total_sales DESC LIMIT 5; -- 哪些品牌銷售市場更好,其載重指數優先度如何 SELECT t.brand, t.load_index, SUM(t.numper) AS total_sales FROM tuhu_price_tbl AS t INNER JOIN (SELECT brand,SUM(numper) AS total_sales FROM tuhu_price_tbl GROUP BY brand ORDER BY total_sales DESC LIMIT 5) AS m ON t.brand = m.brand GROUP BY brand, load_index ORDER BY brand, total_sales DESC;# 哪些品牌銷售市場更好,其規格尺寸優先度如何 guige_merge_df = pd.merge(tuhu_data,num_sum_df,on=['brand','guige']) guige_merge_df = guige_merge_df.loc[:,['brand','guige','num_sum']] # 去重 guige_merge_df.drop_duplicates(subset=['brand','guige','num_sum'],inplace=True) # 排序,1表示升序,0表示降序 guige_merge_df.sort_values(by=['brand','num_sum'],ascending=[1,0],inplace=True) # 篩選 guige_merge_df.groupby(['brand']).head(3)2 途虎銷售數據,品牌貢獻度如何,是否存在二八定律。
SELECT brand, SUM(numper) AS total_sales,ROUND(SUM(numper)/(SELECT SUM(numper) FROM tuhu_price_tbl),3) AS ratio FROM tuhu_price_tbl GROUP BY brand ORDER BY ratio DESC;-- 子查詢 SELECT m.brand, m.total_sales, (SELECT SUM(n.ratio) FROM (SELECT brand, SUM(numper) AS total_sales,ROUND(SUM(numper)/(SELECT SUM(numper) FROM tuhu_price_tbl),3) AS ratio FROM tuhu_price_tbl GROUP BY brand ORDER BY ratio DESC) AS n WHERE m.ratio <= n.ratio) AS total_ratioFROM (SELECT brand, SUM(numper) AS total_sales,ROUND(SUM(numper)/(SELECT SUM(numper) FROM tuhu_price_tbl),3) AS ratio FROM tuhu_price_tbl GROUP BY brand ORDER BY ratio DESC) AS m ORDER BY total_ratio;3 哪些品牌營收數據更好,其輪胎屬性優先度如何。
-- 途虎主營輪胎品牌銷售營收 SELECT brand,SUM(price*numper) AS total_money FROM tuhu_price_tbl GROUP BY brand ORDER BY total_money DESC;-- 品牌速度級別營收數據 SELECT t.brand, t.speed_level, sum(t.money) AS sum_money FROM tuhu_price_tbl AS t INNER JOIN (SELECT brand,SUM(price*numper) AS total_money FROM tuhu_price_tbl GROUP BY brand ORDER BY total_money DESC LIMIT 5) AS m ON t.brand = m.brand GROUP BY brand, speed_level ORDER BY brand, sum_money DESC;4 途虎營收數據,品牌貢獻度如何,是否存在二八定律。
5 途虎價格數據,各品牌價格分布如何,價格區間分組分布。
6 用戶消費水平是怎樣的,品牌消費區間分布如何。
6.1 品牌輪胎君之價格排序
6.2 研究用戶價格選擇區間,對價格敏感點
7 途虎品牌輪胎,按照銷量和營收分群分析。
7.1 模擬客戶分群,依靠消費次數和總消費金額對數值對輪胎品類分群
7.2 銷量與價格分析
8 途虎品牌輪胎, NMPS分類分析。
模擬電商行業RFM分析,模型對品牌輪胎分群,以購買數量 N,消費總金額M,品牌消費單價 P,品牌 評分 S,對輪胎品類分群。
''' 由于不存在用戶行為信息,本小結模擬客戶分析中的RFM分析 購買數量N--可以認為是市場需求 消費總金額M--可以認為是市場潛力 品牌消費單價P--可以認為是高質量高消費水平,高客單產品 品牌評分S-- 可以認為是車主對輪胎的評分,是高推薦的代表 '''9 影響平臺營收、銷量、獲得評分的因素有哪些,排序如何。
(1)相關性分析前,二維分類變量已經使用0/1變換,多維分類變量已經
采用one-hot編碼虛擬變量變換,數值型數據均值標準化。
(2)以從營收、銷量和價格為維度,分析自變量的相關性,著重分析相關系數,
因變量 與均值價格的關系。
10 聚類分析
根據銷量,價格和評分對途虎_ID聚類分析
第五部分:數據可視化
本報告主要展示的是分布、組成、比較和練習,因此主要圖形是直方圖、核密度曲線、箱型圖、樹狀圖、條形圖、堆積圖、柏拉圖和折線圖。
第六部分:撰寫數據報告
報告結構如下:
1 分析背景和目的2 分析方法和過程
3 結論和建議
鏈接:
https://pan.baidu.com/s/1oWnj-Tw_1IhwpkUqNjnObA?pan.baidu.com提取碼:
備注:1 本報告不是演示所用,只是為方便閱讀,因此在單頁PPT文字轉述與PPT存在重復,PPT字體大小也不為演示所用。
2 報告主要是展示數據分析方法論和數據分析方法,有些地方意在告訴讀者,筆者掌握某項技能 ,而沒有簡練純粹的表達。
總結
以上是生活随笔為你收集整理的python轮胎_如何用数据分析方法剖析途虎轮胎数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果x相机使用技巧(苹果官网报价)
- 下一篇: websocket python爬虫_p