当前位置: 首页 > 后端技术 > Python

惊人的!这4款Pandas自动数据分析神器

时间:2023-03-26 18:12:47 Python

我们做数据分析。当我们第一次得到数据集时,通常会使用统计或可视化的方法来理解原始数据。了解列数、行数、值分布、缺失值、列之间的相关性等。这个过程称为EDA(ExploratoryDataAnalysis,探索性数据分析)。如果你是做EDA,用pandas一行行写代码,那福音来了!现在已经有很多EDA工具可以自动生成基本的统计数据和图表,可以为我们节省很多时间。本文将对4款常用的EDA工具进行对比介绍,最后一款绝对完美,完全摒弃代码节奏。在正式介绍这些工具之前,先加载数据集importnumpyasnpiimportpandasaspdiris=pd.read_csv('iris.csv')irisiris是下面使用的数据集,是一个150行*4列的DataFrame。1.PandasGUIPandasGUI提供数据预览、过滤、统计、各种图表展示和数据转换。#安装#pipinstallpandasguifrompandasguiimportshowshow(iris)PandasGUI操作界面PandasGUI更侧重于数据展示,提供了10多种图表,可以通过可视化方式进行配置。但是数据统计比较简单,没有提供缺失值、相关系数等指标,数据转换部分只开放了一小部分接口。2.PandasProfilingPandasProfiling提供了整体数据的概览,每一列的细节,列之间的关系,以及列之间的相关系数。#安装:#pipinstall-Upandas-profiling#jupyternbextensionenable--pywidgetsnbextensionfrompandas_profilingimportProfileReportprofile=ProfileReport(iris,title='irisPandasProfilingReport',explorative=True)profile中每一列的详细信息PandasProfiling操作界面包括:缺失值统计、去重计数、最大值、平均值等统计指标和值分布直方图。列间相关系数支持Spearman、Pearson、Kendall和Phik4种相关系数算法。与PandasGUI相反,PandasProfiling没有丰富的图表,但提供了大量的统计指标和相关系数。3.SweetvizSweetviz类似于PandasProfiling,为每一列提供详细的统计指标、值分布、缺失值统计和列间相关系数。#安装#pipinstallsweetvizimportsweetvizassvsv_report=sv.analyze(iris)sv_report.show_html()Sweetviz操作界面Sweetviz还有一个很好的特性,支持不同数据集的对比,比如:训练数据集和测试数据集对比。Sweetviz数据集对比蓝色和橙色代表不同的数据集,通过对比可以很明显的发现数据集之间的差异。4、dtale最后介绍dtale,它不仅提供了丰富的图表来展示数据,还提供了很多交互界面来操作和转换数据。dtale操作界面的功能主要分为数据操作、数据可视化、高亮显示三个部分。4.1数据操作(Actions)dtale将pandas函数包装成可视化界面,让我们通过图形化界面操作数据。#pipinstalldtaleimportdtaled=dtale.show(iris)d.open_browser()Actions右半图是左图的中文翻译,使用Chrome自动翻译,有些不是很准确。举一个数据操作的例子。上图SummarizeData是Actions菜单中SummarizeData的功能,提供了汇总数据集的界面。在上图中,我们选择按物种列分组,并计算sepal_width列的平均值。同时我们可以看到左下角的dtale已经自动为这个操作生成了pandas代码。4.2数据可视化(Visualize)提供更丰富的图表、统计和显示每列数据概览、重复行、缺失值和相关系数。Visualize给出了一个数据可视化的例子。Describe上图是Visualize菜单中的Describe功能,可以统计每列的最大值、均值、标准差等指标,并提供图表展示。右侧的代码导出可以查看生成这些数据的代码。4.3高亮(Highlight)高亮显示缺失值和异常值,方便我们快速定位异常数据。Highlight上图显示了sepal_width字段的离群值。dtale非常强大,功能非常多。你可以探索和挖掘很多东西。最后简单总结一下。如果探索的数据集侧重于数据展示,可以选择PandasGUI;如果只是想了解基本的统计指标,可以选择PandasProfiling和Sweetviz;如果你需要做深度的数据探索,那就选dtale。