使用 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中文网其他相关文章!