首页 > 后端开发 > Python教程 > Pandas 的'groupby()”函数如何计算组内值的总和?

Pandas 的'groupby()”函数如何计算组内值的总和?

Linda Hamilton
发布: 2024-12-22 04:10:09
原创
328 人浏览过

How Can Pandas' `groupby()` Function Calculate the Sum of Values Within Groups?

理解 Pandas 中的 GroupBy 聚合计算

在处理大型数据集时,pandas 提供了一个名为 groupby() 的强大函数来对数据进行分组特定列并对分组数据执行计算。在这种情况下,让我们探讨如何利用 groupby() 计算组内值的总和。

考虑以下数据框,其中我们有有关个人在多个日期购买水果的详细信息:

| Fruit | Date      | Name  | Number |
|---|---|---|---|
| Apples  | 10/6/2016 | Bob    | 7 |
| Apples  | 10/6/2016 | Bob    | 8 |
| Apples  | 10/6/2016 | Mike   | 9 |
| Apples  | 10/7/2016 | Steve | 10 |
| Apples  | 10/7/2016 | Bob    | 1 |
| Oranges | 10/7/2016 | Bob    | 2 |
| Oranges | 10/6/2016 | Tom   | 15 |
| Oranges | 10/6/2016 | Mike  | 57 |
| Oranges | 10/6/2016 | Bob   | 65 |
| Oranges | 10/7/2016 | Tony   | 1 |
| Grapes  | 10/7/2016 | Bob    | 1 |
| Grapes  | 10/7/2016 | Tom   | 87 |
| Grapes  | 10/7/2016 | Bob   | 22 |
| Grapes  | 10/7/2016 | Bob   | 12 |
| Grapes  | 10/7/2016 | Tony  | 15 |
登录后复制

目标:计算按名称分组的水果购买总和

我们的目标是计算每个人购买的水果总数,按水果(Fruit)和人名(Name)对数据进行分组。

解决方案:使用 GroupBy.sum()

为了实现这一点,我们使用 groupby() 函数对列进行分组:

result = df.groupby(['Fruit', 'Name']).sum()
登录后复制

应用于分组数据的 sum() 方法会自动聚合指定列中的值(在本例中,Number 表示购买的水果数量)。

输出:

代码的输出为我们提供了聚合值:

|               | Number |
|----------------|--------|
| Fruit   | Name         |
| Apples  | Bob        | 16 |
|         | Mike        | 9 |
|         | Steve      | 10 |
| Grapes  | Bob        | 35 |
|         | Tom        | 87 |
|         | Tony       | 15 |
| Oranges | Bob        | 67 |
|         | Mike       | 57 |
|         | Tom        | 15 |
|         | Tony       | 1 |
登录后复制

在这里,我们可以观察每个人购买的水果总数在每个水果类别中。例如,在“鲍勃”组中,购买的“苹果”总数为 16 个,购买的“葡萄”总数为 35 个。

以上是Pandas 的'groupby()”函数如何计算组内值的总和?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板