Pandas GroupBy函数5分钟入门指南

Pandas GroupBy函数5分钟入门指南

数据分析从根本上讲就是寻找有关数据问题的答案。当我们对一组数据执行某种计算或计算统计信息时,通常不足以对整个数据集进行统计。我们通常希望将数据分成几组,执行计算,然后比较不同组之间的结果。

比方说,一个数字营销团队需要调查转化率近期的下跌的潜在原因。从长远来看,整体转换率不太可能使我们找到原因。相反,我们希望比较不同营销渠道,广告,品牌和时间段之间的转化率,以识别指标的差异。

Pandas是一种非常流行的python数据分析库,有GroupBy函数,该函数提供了执行这种数据分析的高效方法。下面将简要介绍GroupBy函数,并通过代码示例介绍这个工具的核心特性。

数据

在整个教程中,将使用在openml.org网站上称为“ credit-g”的数据集。该数据集由提出贷款申请的客户的许多特性和一个目标变量组成,该目标变量为信贷是否还清。

如下图所示。

基本用法

此函数最基本的用法是简单地添加GroupBy到整个数据框并指定我们要进行的计算。这将生成所有数值变量的汇总,这些数值变量按您选择的段分组。这是快速获取整个数据集摘要的有用方法。

在下面的代码中,我将所有内容按工作类型分组并计算了所有数值变量的平均值,输出显示。

如果我们想更具体一点,我们可以采用数据框的一个子集,仅计算某些列的统计信息。在下面的代码中,我仅选择credit_amount。

我们也可以用多个变量分组。在这里,我计算了平均信贷金额的工作和住房类型。

多种聚合

能够为变量计算多个聚合,通常是很有用的。DataFrameGroupBy.agg

该功能使之成为可能。

在下面的代码中,我计算了每个工作组的贷方金额的最小值和最大值。

也可以对不同的列使用不同的聚合。在这里,我计算了credit_amount的最小和最大金额以及每种工作类型的平均年龄。

命名聚合

pd.NamedAgg函数允许为多个聚合提供名称,从而提供更清晰的输出。

自定义聚合

也可以将自定义功能应用于groupby以扩展可能的聚合。

例如,如果我们要计算每种工作类型的不良贷款的百分比,我们可以使用下面的代码。

绘图

我扩展了上一节中创建的代码,创建了一个堆叠条形图,以便更好地可视化每种作业类型的良好和不良贷款的分布。

除了使用GroupBy在同一图表中创建比较之外,我们还可以在多个图表中创建比较。

作者:Rebecca Vickery

免责声明:凡未注明来源或者来源为网络的信息均转自其它平台,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。网站只负责对文章进行整理、排版、编辑,不承担任何法律责任。若有侵权或异议请联系我们删除,谢谢。

发表评论

您的电子邮箱地址不会被公开。