探索性數據分析(Exploratory Data Analysis,EDA)


探索性數據分析(Exploratory Data Analysis,EDA)主要的工作是:對數據進行清洗,對數據進行描述(描述統計量,圖表),查看數據的分布,比較數據之間的關系,培養對數據的直覺,對數據進行總結等。

 

探索性數據分析(EDA)與傳統統計分析(Classical Analysis)的區別:

傳統的統計分析方法通常是先假設樣本服從某種分布,然后把數據套入假設模型再做分析。但由於多數數據並不能滿足假設的分布,因此,傳統統計分析結果常常不能讓人滿意。

探索性數據分析方法注重數據的真實分布,強調數據的可視化,使分析者能一目了然看出數據中隱含的規律,從而得到啟發,以此幫助分析者找到適合數據的模型。“探索性”是指分析者對待解問題的理解會隨着研究的深入不斷變化。

 

應用傳統統計分析方法的數據分析步驟:

    提出問題 Problem => 准備數據 Data => 建模 Model => 分析 Analysis => 得出結論 Conclusions

應用探索性數據分析方法的數據分析步驟:

    提出問題 Problem => 准備數據 Data => 分析 Analysis => 建模 Model => 得出結論 Conclusions

 

探索性數據分析通常有以下幾個步驟:

A. 檢查數據: 

- 是否有缺失值? 
- 是否有異常值? 
- 是否有重復值? 
- 樣本是否均衡?
- 是否需要抽樣? 
- 變量是否需要轉換? 
- 是否需要增加新的特征?

 

注:數據類型分為數值型,類別型,文本型,時間序列等。這里主要指的是數值型(定量數據)和類別型(定性數據),其中數值型又可以分為連續型和離散型。

 

B. 使用描述統計量和圖表對數據進行描述:

1)連續變量:

常見的描述統計量:平均值,中位數,眾數,最小值,最大值,四分位數,標准差等

圖表:頻數分布表(需進行分箱操作),直方圖,箱線圖(查看分布情況)

 

2)無序型離散變量:

常見的描述統計量:各個變量出現的頻數和占比

圖表:頻數分布表(絕對頻數,相對頻數,百分數頻數),柱形圖,條形圖,莖葉圖,餅圖

 

3)有序型離散變量:

常見的描述統計量:各個變量出現的頻數和占比

圖表:頻數分布表,堆積柱形圖,堆積條形圖(比較大小)

 

C. 考察變量之間的關系:

1)連續變量和連續變量(Continuous & Continuous):

對於連續變量與連續變量之間的關系,可以通過散點圖進行查看。對於多個連續變量,可使用散點圖矩陣,相關系數矩陣,熱圖。

 

量化指標:皮爾遜相關系數(線性關系),互信息(非線性關系)

 

2)離散變量和離散變量(Discrete & Discrete):

對於離散變量與離散變量之間的關系,可以通過交叉分組表,復合柱形圖,堆積柱形圖,餅圖進行查看。對於多個離散變量,可以使用網狀圖,通過各個要素之間是否有線條,以及線條的粗線來顯示是否有關系以及關系的強弱。

 

量化指標:卡方獨立性檢驗--->Cramer’s φ (Phi) or Cramer’s V

 

3)離散變量和連續變量(Discrete & Continuous):

對於離散變量和連續變量之間的關系,可以使用直方圖,箱線圖,小提琴圖進行查看,將離散變量在圖形中用不同的顏色顯示,來直觀地觀察變量之間的關系。

 

量化指標:獨立樣本t檢驗中的t統計量和相應的p值(兩個變量),單因素方差分析中的η²(三個變量及以上)

 

D. 其他

1)檢查數據的正態性:直方圖,箱線圖,Q-Q圖(Quantile-Quantile Plot )

直方圖,箱線圖:看圖形是否對稱

Q-Q圖:比較數據的分位數與某個理論分布的分位數是否匹配

 


 

總結一下,如果要對數據集進行探索性分析:(以名字為data的數據集為例)

 

第一步,用pandas讀取數據集,並顯示前5行,看是否加載正確;

 

第二步,有必要時對列名重命名;

 

第三步,查看數據整體情況(行列數data.shape,數據類型data.dtypes,或者用data.info()同時查看這兩項,用data.describe()查看連續變量的描述統計量);

 

第四步,處理缺失值,異常值,重復值問題(各列分別有多少缺失值data.apply(lambda x: sum(x.isnull()),axis=0),各行分別有多少缺失值data.apply(lambda x: sum(x.isnull()),axis=1),總共有多少行有缺失值

len(data.apply(lambda x: sum(x.isnull()),axis=1).nonzero()[0]),刪除重復值data.drop_duplicates());

 

第五步,有必要時轉換數據類型;

 

第六步,看是否需要添加新的特征;

 

第七步,確定分析思路,用思維導圖畫出來;

 

第八步,按照分析思路進行分析並畫出圖形;

 

第九步,總結分析結果;

 


 

附:

圖形的選擇:描述趨勢使用折線圖,描述數量使用柱狀圖(且必須從 0 開始),描述關系使用散點圖,描述比例使用餅狀圖。

 

科學家經過 30 年的研究,發現人對位置、長度和角度的感知最敏銳,可以用來表示數量,其次是面積和密度,可表示順序,對於顏色和形狀的感知是最不精確的,只可用來區分類別。

 

參考:https://www.jianshu.com/p/2e590d306bd2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM