在数据分析领域,理解数据集并从中提取有价值的信息是一项至关重要的任务。传统的数据分析方法可能需要大量的代码和对多种工具的深入了解,例如Pandas、Matplotlib、Seaborn等。然而,Pandas Profiling库的出现大大简化了这一过程,它允许用户通过少量代码生成动态、交互式的探索性数据分析(EDA)表格和可视化图表,无需深入了解多个包的复杂性。
Pandas Profiling库扩展了Pandas DataFrame的功能,通过df.profile_report()方法快速进行数据分析。这种扩展使得创建Pandas DataFrame的分析报告变得轻而易举。探索性数据分析(EDA)是一种通过视觉方式调查和分析数据集以获取知识的策略。EDA用于理解数据集的重要方面,包括值、计数、均值、中位数、四分位数、数据分布、变量之间的相关性、数据类型、数据模型等信息。EDA是一个耗时的过程,需要编写大量代码。
Pandas Profiling是一个Python包,可以自动化EDA过程。它是制作交互式HTML报告的绝佳工具,简化了数据解释和分析。本文将探讨如何在不同环境中安装Pandas Profiling,并展示如何使用它来生成基本的分析报告。
以下是安装Pandas Profiling的几种方法,用户可以根据自己的环境和需求选择合适的安装方式。
pip install pandas-profiling[notebook]
如果计算机上独立运行Python,可以使用pip包安装器安装pandas profile。在cmd(Windows)或终端(Mac)中运行上述命令。pip安装涵盖了所需的一切,运行pip install后,将看到包括pandas、客户端笔记本、seaborn等在内的多个包。生成分析报告所需的一切也都包括在内。
pip install https://github.com/ydataai/pandas-profiling/archive/master.zip
或者,可以直接从GitHub下载最新版本。
conda install -c conda-forge pandas-profiling
如果决定安装Anaconda包来使用Python,可以通过conda包安装过程安装pandas profile库。在Anaconda终端中运行上述命令。使用conda,所需的一切都将被安装。
克隆仓库或点击页面上的“Download ZIP”按钮。转到选择的目录,并通过运行以下命令进行安装:
python setup.py install
注意:pandas profiling库基于pandas,因此版本必须与pandas profiling库使用的pandas版本相匹配。如果安装了较旧版本的Pandas,Pandas profiling可能会导致错误。在这种情况下,将当前的pandas安装更新到最新版本是一个解决方案。要强制当前的pandas更新,回到控制台并提供以下命令:
pip install --upgrade --force-reinstall pandas
现在pandas版本是最新的。
Pandas Profiling报告——“基本构建块”。Pandas profiling库的输出可以说是非常简单的。可以使用以下代码构建一个称为分析报告的通用输出。
import pandas as pd
from pandas_profiling import ProfileReport
pd.set_option('display.max_colwidth', None)
%matplotlib inline
df = pd.read_excel('GA NMU.xlsx')
分析报告非常有用,它们是完全可编辑的。下一段代码加载了一个导航配置,包括文本(长度分布、Unicode数据)、文件(文件大小、创建时间)和图像(尺寸、EXIF信息)的多个特性。
profile.to_notebook_iframe()
运行查询的样本输出
profile.to_file(output_file='Pandas ProfilingReport.html')
对于每个列,如果与列类型相关,则在交互式HTML报告中呈现以下统计数据:
概览:上述显示了超过五页数据和可视化的一部分。这是一个基本的实现,如前所述。报告的标题是唯一的可选添加(在上图中未显示)。可以看到“Toggle Details”小部件。当用户点击小部件(按钮)时,会显示特定细节的列表。
此部分提供此部分的一般信息。变量类型和数据统计。记录统计显示列、行、缺失值等。变量类型指示记录属性的数据类型。还有一个“警告”,列出了与其他函数有强关联的函数。
此部分为每个特征单独提供详细信息。当选择上述图像中指示的“Toggle Details”选项时,将显示一个新部分。
相关性:此部分使用Seaborn热图来说明特征之间的关系。轻松切换不同的相关性,包括皮尔逊、斯皮尔曼和肯德尔矩阵。
样本:此部分显示数据集的前10行和后10行。
在pandas profiling报告中有许多选项和复杂的参数。报告的视觉输出以及每个图表和可视化的详细信息都由设置控制。
以下是一些应该知道的可选设置:
profile.to_file(“flights_data.html”)
设置可以用两种不同的方式使用。创建分析报告时,第一个选项使用字典作为额外的特性进行修改。第二个选择再次使用字典定义键值对,并使用点表示法导航到必要的参数。
from pandas_profiling import ProfileReport
profile = ProfileReport(df, minimal=True)
profile.to_file(output_file="output.html")