首页 >后端开发 >Python教程 >如何使用 Pandas GroupBy 按名称计算水果购买总量?

如何使用 Pandas GroupBy 按名称计算水果购买总量?

Barbara Streisand
Barbara Streisand原创
2024-12-26 00:20:11973浏览

How to Calculate Total Fruit Purchases by Name Using Pandas GroupBy?

使用 Pandas Group-By Sum 按名称计算水果总数

分组和聚合是处理数据时的基本操作。 Pandas 提供了强大的 GroupBy 函数来简化这些过程。

考虑以下 DataFrame,您要在其中计算每个名称购买的水果总数:

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

为了实现这一点,我们可以使用 GroupBy 函数按“名称”和“水果”对 DataFrame 进行分组:

df.groupby(['Name', 'Fruit'])

但是,这仅对数据进行分组,而不执行任何聚合。要计算每个组的“Number”总和,我们可以使用 sum():

df.groupby(['Name', 'Fruit']).sum()

这将输出一个具有分层索引的新 DataFrame,其中第一级对应于“Name”,第二层对应“水果”。 “数字”列包含每组的总和:

              Number
Name   Fruit     
Bob    Apples      16
       Grapes      35
       Oranges     67
Mike   Apples       9
       Oranges     57
Steve  Apples      10
Tom    Grapes      87
       Oranges     15
Tony   Grapes      15
       Oranges      1

这给了我们期望的结果,显示每个名称购买的水果总数。

以上是如何使用 Pandas GroupBy 按名称计算水果购买总量?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn