探索性数据分析(EDA)是数据科学模型开发和数据集研究的重要组成部分。在拿到一个新数据集时,首先需要花费大量时间进行 EDA 来研究数据集中内在的信息。自动化的 EDA Python 包可以用几行代码执行 EDA。本文整理了 10 个可以自动执行 EDA 并生成有关数据的见解的 Python 包,分析它们的功能及适用场景。
1. D-Tale
D-Tale 使用 Flask 作为后端、React 前端,并且可以与 Jupyter Notebook 和终端无缝集成。它支持 Pandas 的 DataFrame、Series、MultiIndex、DatetimeIndex 和 RangeIndex。
安装:
pip install dtale
示例代码:
import dtale
import pandas as pd
dtale.show(pd.read_csv("titanic.csv"))
D-Tale 用一行代码就可以生成一个报告,其中包含数据集、相关性、图表和热图的总体总结,并突出显示缺失的值等。D-Tale 还可以为报告中的每个图表进行分析,图表支持交互操作,适合在本地快速查看数据分布和异常值。
2. Pandas-Profiling
Pandas-Profiling 可以生成 Pandas DataFrame 的概要报告。它扩展了 pandas DataFrame 的 df.profile_report() 方法,并且在大型数据集上工作得非常好,可以在几秒钟内创建报告。
安装:
pip install pandas-profiling
示例代码:
import pandas as pd
from pandas_profiling import ProfileReport
profile = ProfileReport(pd.read_csv('titanic.csv'), explorative=True)
profile.to_file("output.html")
该库生成的 HTML 报告非常详细,包含变量类型统计、相关性矩阵、缺失值分析和样本数据预览,非常适合快速了解数据结构。
3. Sweetviz
Sweetviz 是一个开源的 Python 库,只需要两行 Python 代码就可以生成漂亮的可视化图,将 EDA 作为一个 HTML 应用程序启动。Sweetviz 包是围绕快速可视化目标值和比较数据集构建的。
安装:
pip install sweetviz
示例代码:
import pandas as pd
import sweetviz as sv
sweet_report = sv.analyze(pd.read_csv("titanic.csv"))
sweet_report.show_html('sweet_report.html')
Sweetviz 库生成的报告包含数据集、相关性、分类和数字特征关联等的总体总结,界面美观且加载速度快,适合向非技术人员展示数据概览。
4. AutoViz
AutoViz 包可以用一行代码自动可视化任何大小的数据集,并自动生成 HTML、Bokeh 等报告。用户可以与 AutoViz 包生成的 HTML 报告进行交互。


