1. 適配 Pandas,兩行代碼實現(xiàn)數(shù)據(jù)初探

        共 2630字,需瀏覽 6分鐘

         ·

        2021-04-15 23:29

        探索性數(shù)據(jù)分析,即 Exploratory Data Analysis,簡稱為 EDA,指拿到數(shù)據(jù)以后,快速了解數(shù)據(jù),對數(shù)據(jù)進行基礎(chǔ)的統(tǒng)計分析,比如,分析數(shù)據(jù)類型、缺失值、數(shù)據(jù)分布狀態(tài)、相關(guān)性、繪制可視化圖等操作。

        以前進行 EDA 操作雖然不是特別麻煩,但也不是特別簡單,今天推薦的這個工具,配合 Pandas 只需要兩行代碼就可以實現(xiàn)超級全面的數(shù)據(jù)分析內(nèi)容,可謂是數(shù)據(jù)分析師的福音。

        這個 Python 數(shù)據(jù)分析支持庫就是新近推出的 Sweetviz,Github 上的項目代碼庫為: https://github.com/fbdesignpro/sweetviz,該支持庫的作者叫 Francois Bertrand,用他的話說,Sweetviz 搭配 pandas 的 Dataframe,只需兩行代碼就可以快速生成 HTML 交互式數(shù)據(jù)探索報告。

        Francois 在 Github 上提供了 Sweetviz 的實例,該實例使用的是大家耳熟能詳?shù)奶┨鼓峥藬?shù)據(jù)集,生成的 HTML 報告他也放在網(wǎng)上了,大家可以進去自己戳戳點點,基本上就可以了解:

        http://cooltiming.com/SWEETVIZ_REPORT.html

        泰坦尼克數(shù)據(jù)集探索性分析用例

        通過這個用例,可以看出 Sweetviz 的一些主要功能:

        • 目標分析,比如泰坦尼克數(shù)據(jù)集中幸存者與其它要素之間的關(guān)系

        • 可視化,這個不多說,上圖就可以看到

        • 相關(guān)性分析,比如皮爾森相關(guān)系數(shù)、不確定性系數(shù)、數(shù)據(jù)相關(guān)性等基礎(chǔ)相關(guān)性分析

        • 數(shù)據(jù)類型推斷,可以自動檢測數(shù)字、類別、文本特征

        • 生成數(shù)據(jù)集摘要信息,唯一值、缺失值、重復(fù)數(shù)據(jù)、出現(xiàn)頻率最高的值等

        • 基礎(chǔ)數(shù)據(jù)分析,如最大值、最小值、數(shù)據(jù)范圍、四分位數(shù)、均值、眾數(shù)、標準偏差、數(shù)據(jù)匯總、中位數(shù)絕對偏差、變異系數(shù)、數(shù)據(jù)峰度、數(shù)據(jù)偏度等

        • 支持 Jupyter Notebook

        • 支持報告縮放與垂直布局

        安裝

        • 官方說的是支持 Python 3.6+ 和 Pandas 0.25.3+,呆鳥用的是 python 3.8.8 和 Pandas 1.2.3

        • pip install sweetviz

        下載數(shù)據(jù)

        • 呆鳥已經(jīng)把數(shù)據(jù)給大家下載好了,回復(fù)文章底部的口令,下載數(shù)據(jù)集與sweetviz.ipynb 文件

        • 打開 jupyter notebook 或 jupyter lab, 或其它 VSCode、Pycharm 等你喜歡的 IDE,呆鳥這里用的是 jupyter lab 3.0

        • 創(chuàng)建 sweetviz_test 文件夾,新建一個 jupyter notebook 文件,比如呆鳥這里叫 sweetviz.ipynb

        • test.csvtrain.csv 兩個文件復(fù)制到 sweetviz_test 中的 data 文件夾中(新建的)

        • 打開 sweetviz.ipynb,開始寫代碼,很簡單

        import sweetviz
        import pandas as pd

        train = pd.read_csv("data/train.csv")
        test = pd.read_csv("data/test.csv")

        my_report = sweetviz.compare([train, "Train"], [test, "Test"], "Survived")
        my_report.show_html("Report.html"

        完成了,此時在 sweetviz_test 文件夾中就生成了 Report.html 文件,就是上圖中的 sweetviz 數(shù)據(jù)報告,雙擊打開就可以查看了。

        Sweetviz 還支持在 jupyter notebook 里內(nèi)置顯示報告,使用如下命令:

        my_report.show_notebook(  w=None
                        h=None
                        scale=None,
                        layout='widescreen',
                        filepath=None
        如圖

        遇到的問題

        在運行 my_report = sweetviz.compare([train, "Train"], [test, "Test"], "Survived") 時顯示 ImportError: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html

        此時安裝 ipywidgets 就可以了,安裝命令為 pip install ipywidgets

        搞定收工,如果你喜歡這個 Python 快捷數(shù)據(jù)分析工具,就自己安裝下載數(shù)據(jù)試試吧。

        關(guān)注呆鳥,關(guān)注 Python 大咖談,一起學(xué)習(xí) Python 和數(shù)據(jù)分析。

        下載數(shù)據(jù)集的口令為 sweetviz_test,大家只要在 Python 大咖談的公號后臺輸入這個口令就可以看到下載鏈接了。


        瀏覽 72
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 粗大黑人巨精大战中国成人 | 少妇在线看www | 免费观看三级片中文字幕 | 又大又骚www | ⅹxxxxhd亚洲日本hd老师 |