直覺
當你決定去看一部你沒聽說過的電影時,你會對許多問題感到困惑,比如電影演員和劇組成員是誰?當然你也可以在各種軟件上觀看電影預告片,以此來了解觀眾對這部電影的評價。
無論你在觀看電影前做什麼準備措施,都是在做數據科學家稱之為“探索性數據分析”的行為。
探索性數據分析指的是對數據進行初始調查以發現模式、發現異常、測試假設和藉助於彙總統計和圖形表示來檢查假設的關鍵過程。
要做好一個實踐首先要理解數據並嘗試從中收集儘可能多的信息。
EDA使用樣本數據集解釋:
為了更好地理解概念和技術,本文將以UCI機器學習知識庫中提供的白酒品質數據集變體為例,並試圖從EDA數據集中獲得儘可能多的信息。
首先,導入必要的庫(例如pandas,numpy,matplotlib和seaborn)並加載了數據集。
在給定的數據集中原始數據由分隔符分隔“; ”。
為了更仔細的查看數據,需要pandas庫的“.head()”函數的幫助,它返回了數據集的前五個觀察值。類似地,“.tail()”返回了數據集的最後五個觀察值。
通過“.shape”找出了數據集中行和列的總數。
數據集包括4898個觀察值和12個特徵。
其中一個是因變量,其餘是自變量 ——物理化學特徵。
瞭解列及其相應的數據類型以及查找它們是否包含空值也是一種可行的做法。
數據只有浮點和整數值。
沒有可變列具有空值/缺失值。
Pandas中的describe()函數在獲得各種彙總統計信息時非常方便。該函數返回數據的計數、平均值、標準差、最小值、最大值以及數據的分位數。
在這裡可以注意到,平均值小於每個列的中值,在索引欄中用50%(第五十百分位數)表示。
預測因子“殘糖”,“遊離二氧化硫”,“總二氧化硫”的75%瓦和最大值之間存在顯著差異。
因此,觀察1和2表明在我們的數據集中存在極端值/異常值。
通過查看因變量,幾個關鍵的信息如下:
目標變量/因變量在本質上是離散的和分類的。
“質量”的評分範圍從1到10,其中1為差,10為最佳。
1、2和10質量評分不是由任何觀察結果給出的。得分都在3到9之間。
這表明每個質量得分的投票計數以降序排列。
“質量”主要集中在第5、6、7類。
僅對第3和9類進行了少量觀察。
數據科學充滿了難以言明的魅力,參與得越多,瞭解的越多,你就越難以停止對它的深入探索。現在讓我們用美麗的圖表來研究數據。Python有一個可視化庫Seaborn,它建立在matplotlib之上。它提供了非常有吸引力的統計圖表,用以執行單變量和多變量分析。
要使用線性迴歸進行建模,必須刪除相關變量以改進模型。使用pandas“.corr()”函數可以找到相關性,並可以使用seaborn中的熱圖來使相關矩陣可視化。
深色陰影表示正相關,淺色陰影表示負相關。
如果你設置了annot = True,那麼你將會得到grid-cells中要素相互關聯的值。
在特徵選擇過程中移除相關變量是一種很好的做法。
由此可以推斷“密度”與“殘糖”有很強的正相關,而與“酒精”有很強的負相關。
“遊離二氧化硫”和“檸檬酸”與“質量”幾乎沒有相關性。
由於相關性為零,我們可以推斷出這兩個預測因子之間沒有線性關係。但是,如果將線性迴歸模型應用於數據集,那麼這些特性是可以被刪除的。
箱形圖(或盒須圖)顯示了定量數據的分佈,以便於比較變量。該框顯示數據集的四分位數,而晶須延伸顯示剩餘的分佈。
箱形圖(a.k.a.盒和晶須圖)是基於五個數字總結來顯示數據分佈的標準化方式:
最小值
-
第一四分位數
中位數
第三四分位數
最大值
在最簡單的箱形圖中,中心矩形跨越第一個四分位數到第三個四分位數(四分位間距或IQR)。
矩形內的一段顯示中位數和“須”,在框的上方和下方顯示最小值和最大值的位置。
異常值為3×IQR或高於第三四分位數或3×IQR或低於第一四分位數。
在數據集中,除了“酒精”以外,所有其他特徵列都顯示異常值。
現在要檢查變量的線性度,繪製分佈圖並查找要素的偏態。核密度估計(kde)是繪製分佈形狀的一個非常實用的工具。
“pH”欄似乎是正態分佈的。
剩下的所有自變量都是右偏/正斜偏的。
最後,總結所有探索性數據分析是充滿一種哲學和藝術的方法,你可以在早期的數據中發現每一個細微差別。
閱讀更多 AI中國 的文章