美文网首页Python数据分析呆鸟的Python数据分析
适配 Pandas,两行代码实现数据初探

适配 Pandas,两行代码实现数据初探

作者: 呆鸟的简书 | 来源:发表于2021-04-14 18:03 被阅读0次

    探索性数据分析,即 Exploratory Data Analysis,简称为 EDA,指拿到数据以后,快速了解数据,对数据进行基础的统计分析,比如,分析数据类型、缺失值、数据分布状态、相关性、绘制可视化图等操作。

    以前进行 EDA 操作虽然不是特别麻烦,但也不是特别简单,今天推荐的这个工具,配合 Pandas 只需要两行代码就可以实现超级全面的数据分析内容,可谓是数据分析师的福音。

    这个 Python 数据分析支持库就是新近推出的 Sweetviz,Github 上的项目代码库为: https://github.com/fbdesignpro/sweetviz,该支持库的作者叫 Francois Bertrand,用他的话说,Sweetviz 搭配 pandas 的 Dataframe,只需两行代码就可以快速生成 HTML 数据探索报告。

    Francois 在 Github 上提供了 Sweetviz 的实例,该实例使用的是大家耳熟能详的泰坦尼克数据集,生成的 HTML 报告他也放在网上了,大家可以进去自己戳戳点点,基本上就可以了解了,http://cooltiming.com/SWEETVIZ_REPORT.html

    泰坦尼克数据集探索性分析用例

    通过这个用例,可以看出 Sweetviz 的一些主要功能:

    • 目标分析,比如泰坦尼克数据集中幸存者与其它要素之间的关系
    • 可视化,这个不多说了,上图中就可以看到
    • 数据之间的相关性分析,比如皮尔森相关系数、不确定性系数、数据相关性等基础相关性分析
    • 数据类型推断,可以自动检测数字、类别、文本特征
    • 生成数据集摘要信息,唯一值、缺失值、重复数据、出现频率最高的值等
    • 基础数据分析,如最大值、最小值、数据范围、四分位数、均值、众数、标准偏差、数据汇总、中位数绝对偏差、变异系数、数据峰度、数据偏度等
    • 支持 Jupyter Notebook
    • 支持报告缩放与垂直布局

    安装

    • 官方说的是支持 Python 3.6+ 和 Pandas 0.25.3+ ,呆鸟用的是 python 3.8.8 和 Pandas 1.2.3
    • pip install sweetviz

    下载数据

    • 呆鸟已经把数据给大家下载好了,回复文章底部注解里的口令,下载数据集
    • 打开 jupyter notebook 或 jupyter lab, 或其它 VSCode、Pycharm 等你喜欢的 IDE,呆鸟这里用的是 jupyter lab 3.0
    • 创建 sweetviz_test 文件夹,新建一个 jupyter notebook 文件,比如呆鸟这里叫 sweetviz.ipynb
    • test.csvtrain.csv 两个文件复制到 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 数据报告,双击打开就可以查看了。

    Sweetviz 还支持在 jupyter notebook 里内置显示报告,使用如下命令:

    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 快捷数据分析工具,就自己安装下载数据试试吧。

    关注呆鸟,关注 Python 大咖谈,一起学习 Python 和数据分析。

    下载数据集的口令为 sweetviz_test,大家只要在 Python 大咖谈后台输入这个口令就可以看到下载链接了。

    相关文章

      网友评论

        本文标题:适配 Pandas,两行代码实现数据初探

        本文链接:https://www.haomeiwen.com/subject/bvsklltx.html