一般在python進行數據分析/統計分析時,第一步總是對數據進行一些描述性分析、相關性分析,但是總會是有一大堆代碼,那么今天就介紹一個神器pandas_profiling,一行命令就能搞定大部分描述性分析!
安裝
pip install pandas_profiling
使用
那么我們繼續使用之前文章中使用過很多次的NBA數據集,還記得我們在介紹pandas使用的那篇文章中分很多章節去講解如何使用pandas對該數據集進行一些基礎的數據分析嗎(python數據分析萬字干貨!一個數據集全方位解讀pandas)。那就是使用df.describe()函數
df.describe()
函數雖然功能強大,但對於進行詳細的探索性數據分析卻有些基礎。 pandas_profiling
擴展了pandas DataFrame的功能,可以使用df.profile_report()
進行快速的數據分析。只需要一行命令就能得到所有結果!
首先還是先導入數據
import pandas as pd
import pandas_profiling
nba = pd.read_csv('nba_all_elo.csv')
然后只用一行命令就能得到全部的數據分析結果
nba.profile_report()
可以看到,除了之前我們需要的一些描述性統計數據,該報告還包含以下信息:
-
類型推斷:檢測數據幀中列的數據類型。
-
要點:類型,唯一值,缺失值
-
分位數統計信息,例如最小值,Q1,中位數,Q3,最大值,范圍,四分位數范圍
-
描述性統計數據,例如均值,眾數,標准偏差,總和,中位數絕對偏差,變異系數,峰度,偏度
-
最常使用的值
-
直方圖
-
相關性矩陣
-
缺失值矩陣,計數,熱圖和缺失值樹狀圖
-
文本分析:了解文本數據的類別(大寫,空格),腳本(拉丁,西里爾字母)和塊(ASCII)
當然我們還以將該報告保存為html,這樣結合Django可以快速將本次分析結果部署至雲端隨時隨地查看!
result = pandas_profiling.ProfileReport(nba)
result.to_file("./result.html")
參考資料
[1]
GitHub: https://github.com/pandas-profiling/pandas-profiling