你愿意花十分鐘系統(tǒng)了解數(shù)據(jù)分析方法嗎?
通常在拿到一份數(shù)據(jù)進(jìn)行相關(guān)的模型訓(xùn)練之前,我們需要進(jìn)行數(shù)據(jù)清洗以便得到干凈的數(shù)據(jù)。進(jìn)一步需要找到與問(wèn)題有關(guān)的特征信息,并把這些特征轉(zhuǎn)換成特征矩陣的數(shù)值,這也就是機(jī)器學(xué)習(xí)實(shí)踐中的重要步驟之一,特征工程。本系列文章將從數(shù)據(jù)特征的分布分析、對(duì)比分析、統(tǒng)計(jì)分析、貢獻(xiàn)度分析(帕累托分析)、和特征的相關(guān)性分析來(lái)識(shí)別數(shù)據(jù)集整體上的一些重要性質(zhì)。
本文目錄
- 特征分布分析
- 特征對(duì)比分析
- 特征統(tǒng)計(jì)分析
- 特征貢獻(xiàn)度分析
- 特征相關(guān)性分析
01、分布分析
理論介紹:分布分析是用來(lái)解釋數(shù)據(jù)的分布類(lèi)型和分布特征,顯示其分布情況。所以可以對(duì)一開(kāi)始拿到數(shù)據(jù)可以首先進(jìn)行初步的分布分析。分布分析主要分成兩種:
- ①對(duì)定量的數(shù)據(jù)進(jìn)行分布分析
- ②對(duì)定性的數(shù)據(jù)進(jìn)行分布分析。
對(duì)定量數(shù)據(jù)的分布分析按照如下步驟進(jìn)行:
- 求極差
- 決定組距與組數(shù)
- 決定分點(diǎn)
- 繪制頻率分布圖
對(duì)定性的數(shù)據(jù)分布分析:
- 根據(jù)變量的分類(lèi)類(lèi)型來(lái)確定分組,然后使用圖形對(duì)信息進(jìn)行顯示。
Python分析結(jié)果:
- 比如現(xiàn)在你爬取到某地區(qū)的二手房信息數(shù)據(jù),針對(duì)這一批數(shù)據(jù)的房?jī)r(jià)你要做一次定量分布分析,以及對(duì)不同房子的朝向做一個(gè)定性的分布分析,以便初步的了解房子的一些特征分布。
參考房?jī)r(jià)定量分析
1.首先利用pandas讀取數(shù)據(jù)并取前五條數(shù)據(jù)得到如下信息。
2.求參考總價(jià)的分組區(qū)間并在原始數(shù)據(jù)中添加一個(gè)新的字段“參考總價(jià)分組區(qū)間”。
3.計(jì)算每段參考總價(jià)的區(qū)間的頻數(shù)、頻率并繪制直方圖。
房屋朝向定性分析
對(duì)不同房屋朝向占比可繪制一個(gè)餅圖。
02、對(duì)比分析
理論介紹:對(duì)比分析是指把兩個(gè)相互聯(lián)系的指標(biāo)進(jìn)行比較,從數(shù)量上展示和說(shuō)明研究對(duì)象規(guī)模的大小、水平的高低、速度的快慢,以及各種關(guān)系是否協(xié)調(diào)。特別適用于指標(biāo)間的橫縱向比較、時(shí)間序列的比較分析。在對(duì)比分析中,選擇合適的對(duì)比標(biāo)準(zhǔn)是十分關(guān)鍵的步驟,選擇合適,才能做出客觀的評(píng)價(jià),選擇不合適,評(píng)價(jià)可能得出錯(cuò)誤的結(jié)論。
對(duì)比分析主要分為以下兩種形式:
絕對(duì)數(shù)比較
利用這組指標(biāo)絕對(duì)數(shù)進(jìn)行對(duì)比,從而尋找差異的一種方法。
相對(duì)數(shù)比較
它是由兩個(gè)有聯(lián)系的指標(biāo)對(duì)比計(jì)算的,用以反映客觀現(xiàn)象之間數(shù)量聯(lián)系程度的綜合指標(biāo),其數(shù)值表現(xiàn)為相對(duì)數(shù)。由于研究目的和對(duì)比基礎(chǔ)不用,相對(duì)數(shù)可以分為以下幾種:結(jié)構(gòu)相對(duì)數(shù)、比例相對(duì)數(shù)、動(dòng)態(tài)相對(duì)數(shù)和空間相對(duì)數(shù)
Python分析結(jié)果:
絕對(duì)數(shù)比較案例:比如現(xiàn)在有某公司的A、B產(chǎn)品某月銷(xiāo)量數(shù)據(jù),這里我們可以對(duì)A、B產(chǎn)品的銷(xiāo)量做絕對(duì)數(shù)對(duì)比。
相對(duì)數(shù)比較案例:
結(jié)構(gòu)相對(duì)數(shù):在分組基礎(chǔ)上,各組總量指標(biāo)與總體的總量指標(biāo)對(duì)比,計(jì)算出各組數(shù)量在總量中所占比重。例如,30天內(nèi)A、B產(chǎn)品的日銷(xiāo)售額,由于 A、B產(chǎn)品銷(xiāo)售額量級(jí)不同,計(jì)算出A、B產(chǎn)品每日銷(xiāo)售額占該月各自總銷(xiāo)售額對(duì)比。
比例相對(duì)數(shù):比例相對(duì)數(shù) = 總體中某一部分?jǐn)?shù)值 / 總體中另一部分?jǐn)?shù)值 。如 “基本建設(shè)投資額中工業(yè)、農(nóng)業(yè)、教育投資的比例”、“男女比例”
空間相對(duì)數(shù)(橫向):比如說(shuō)同樣的2017年北京和深圳膜拜單車(chē)使用量,空間是比較抽象的更多的是在時(shí)間相同的情況下,不同的元素的比較 。
動(dòng)態(tài)相對(duì)數(shù)(縱向):將同一現(xiàn)象在不同時(shí)期的指標(biāo)數(shù)值對(duì)比,用以說(shuō)明發(fā)展方向和變化的速度,如發(fā)展速度、增長(zhǎng)速度等。例如求A產(chǎn)品的某月的定基增長(zhǎng)速度額環(huán)比增長(zhǎng)速度
03、統(tǒng)計(jì)分析
- 理論介紹:對(duì)一組數(shù)據(jù)用統(tǒng)計(jì)指標(biāo)定量的分析數(shù)據(jù),一般從集中趨勢(shì)和離中趨勢(shì)兩個(gè)方面來(lái)衡量數(shù)據(jù)。
- 數(shù)據(jù)的集中趨勢(shì):指一組數(shù)據(jù)向某一中心靠攏的傾向,核心在于尋找數(shù)據(jù)的代表值或中心值 ,所以需要找到數(shù)據(jù)的統(tǒng)計(jì)平均數(shù)來(lái)衡量。統(tǒng)計(jì)平均數(shù)可分為,①算術(shù)平均數(shù)、加權(quán)算術(shù)平均數(shù)②位置平均數(shù)。
- 數(shù)據(jù)的離中趨勢(shì):指一組數(shù)據(jù)中各數(shù)據(jù)以不同程度的距離偏離中心的趨勢(shì),可用極差與分位差、方差與標(biāo)準(zhǔn)差、離散系數(shù) 等衡量。
Python結(jié)果分析:
對(duì)某一組數(shù)據(jù)分析其集中趨勢(shì)結(jié)果:
對(duì)某一組數(shù)據(jù)分析其離中趨勢(shì)結(jié)果:
- 你要比較A、B數(shù)據(jù)的分散程度,可求得其分位差和其他指標(biāo)。你可以繪制箱型圖對(duì)比。
04、帕累托分析
理論介紹:帕累托分析又叫貢獻(xiàn)度分析,原理是20/80定律,即80%的利潤(rùn)常常來(lái)自于20%的產(chǎn)品。一般來(lái)說(shuō)投入產(chǎn)出,努力和報(bào)酬之間并不是絕對(duì)的線性關(guān)系,總有一些關(guān)鍵因素起著至關(guān)重要的作用,而帕累托分析就是找到影響事務(wù)的關(guān)鍵因素,分清主次。
Python代碼結(jié)果分析:
例如現(xiàn)在你有一份餐廳的不同菜品的盈利數(shù)據(jù),你想找到哪些菜對(duì)該菜廳的盈利貢獻(xiàn)***??砂凑杖缦虏襟E來(lái)實(shí)現(xiàn)貢獻(xiàn)度分析:
- 對(duì)不同菜品按盈利額排序
- 計(jì)算累積占比
- 找到累積占比85%的菜品,并找到其對(duì)應(yīng)的索引位置。
- 繪制盈利圖并標(biāo)記核心位置。
05、相關(guān)性分析
理論介紹:相關(guān)性分析是研究?jī)蓚€(gè)或兩個(gè)以上處于同等地位的隨機(jī)變量間的相關(guān)關(guān)系的統(tǒng)計(jì)分析方法。例如,人的身高和體重之間;空氣中的相對(duì)濕度與降雨量之間的相關(guān)關(guān)系都是相關(guān)分析研究的問(wèn)題。相關(guān)分析與回歸分析之間的區(qū)別:回歸分析側(cè)重于研究隨機(jī)變量間的依賴關(guān)系,以便用一個(gè)變量去預(yù)測(cè)另一個(gè)變量;相關(guān)分析側(cè)重于發(fā)現(xiàn)隨機(jī)變量間的種種相關(guān)特性??捎孟嚓P(guān)系數(shù)r來(lái)衡量?jī)蓚€(gè)特征之間的相關(guān)性。
相關(guān)系數(shù)r的解讀:
- 正相關(guān):如果x,y變化的方向一致,如登陸次數(shù)和商機(jī)用戶的關(guān)系,r>0;一般地, |r|>0.95 存在顯著性相關(guān)|r|≥0.8 高度相關(guān);0.5≤|r|<0.8 中度相關(guān)0.3≤|r|<0.5 低度相關(guān);|r|<0.3 關(guān)系極弱,認(rèn)為不相關(guān)。
- 負(fù)相關(guān):如果x,y變化的方向相反,如吸煙與肺功能的關(guān)系,r<0
- 無(wú)線性相關(guān):r=0。
關(guān)于相關(guān)系數(shù)的計(jì)算有三種:
- ①Pearson相關(guān)系數(shù)
- ②Spearman秩相關(guān)系數(shù)
- ③Kendall相關(guān)系數(shù)。
注意點(diǎn):皮爾遜相關(guān)系數(shù)的計(jì)算是數(shù)據(jù)分布為正太分布,所以計(jì)算之前要先進(jìn)行正態(tài)性檢驗(yàn)。對(duì)于不服從正太分布變量的關(guān)聯(lián)性可用斯皮爾曼相關(guān)系數(shù)來(lái)計(jì)算,也叫等級(jí)相關(guān)系數(shù)。
Python結(jié)果分析:
首先對(duì)數(shù)據(jù)進(jìn)行正太性檢驗(yàn),利用scipy里面集成好的K-S檢驗(yàn)方法。
2. 利用pandas里面集成好的相關(guān)系數(shù)計(jì)算方法。
總結(jié):本文對(duì)數(shù)據(jù)特征的一些常用分析方法進(jìn)行了系統(tǒng)介紹,并利用Python里面的科學(xué)計(jì)算庫(kù)Numpy、Pandas、Scipy、Matplotlib實(shí)現(xiàn)了每一種分析方法的分析結(jié)果,并且將結(jié)果圖形化顯示出來(lái)。