Pandas - 按一列分组并聚合其他列以列出

pandas

1个回答

写回答

Wendyyyds

2025-06-23 07:15

+ 关注

Pandas
Pandas

使用Pandas按一列分组并聚合其他列以列出

Pandas是一个强大的数据分析工具,它提供了许多灵活的功能来处理和分析数据。在本文中,我们将学习如何使用Pandas按一列分组并聚合其他列以列出数据。

1. 数据准备

首先,我们需要准备一些数据来进行演示。假设我们有一个销售数据集,其中包含了不同产品的销售记录。每条记录包含产品名称、销售日期和销售数量。我们将使用这个数据集来进行分组和聚合操作。

下面是一个简单的示例数据集:

Python

import Pandas as pd

data = {

'Product': ['A', 'B', 'A', 'B', 'A', 'B', 'C', 'C'],

'Date': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05', '2021-01-06', '2021-01-07', '2021-01-08'],

'Quantity': [10, 5, 8, 12, 6, 3, 7, 9]

}

df = pd.DataFrame(data)

这个数据集包含了8条销售记录,其中包括了产品名称、销售日期和销售数量。我们将使用这个数据集进行后续的演示。

2. 按一列分组并聚合其他列

一旦我们有了数据集,我们就可以开始按一列进行分组并聚合其他列。在Pandas中,我们可以使用groupby()agg()函数来完成这个任务。

下面是一个示例代码,演示了如何按产品名称进行分组,并计算每个产品的总销售数量:

Python

grouped_df = df.groupby('Product').agg({'Quantity': 'sum'})

在这个示例中,我们首先使用groupby()函数按产品名称进行分组,然后使用agg()函数对每个分组进行聚合操作。在agg()函数中,我们使用了一个字典来指定要聚合的列和聚合函数。在这个例子中,我们使用了'Quantity'作为要聚合的列,并使用了'sum'作为聚合函数,表示计算总和。

3. 列出聚合结果

一旦我们对数据进行了分组和聚合,我们可以通过打印结果来列出聚合结果。在Pandas中,我们可以使用print()函数来打印数据。

下面是一个示例代码,演示了如何列出聚合结果:

Python

print(grouped_df)

运行这段代码后,我们将获得以下输出:

Quantity

Product

A 24

B 20

C 16

这个输出显示了按产品名称分组后,每个产品的总销售数量。我们可以看到,产品A的总销售数量为24,产品B的总销售数量为20,产品C的总销售数量为16。

在本文中,我们学习了如何使用Pandas按一列分组并聚合其他列以列出数据。我们首先准备了一个示例数据集,然后使用groupby()agg()函数对数据进行了分组和聚合操作。最后,我们通过打印结果列出了聚合结果。Pandas的分组和聚合功能提供了一个灵活而强大的工具,可以帮助我们对数据进行更深入的分析和理解。

案例代码

Python

import Pandas as pd

data = {

'Product': ['A', 'B', 'A', 'B', 'A', 'B', 'C', 'C'],

'Date': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05', '2021-01-06', '2021-01-07', '2021-01-08'],

'Quantity': [10, 5, 8, 12, 6, 3, 7, 9]

}

df = pd.DataFrame(data)

grouped_df = df.groupby('Product').agg({'Quantity': 'sum'})

print(grouped_df)

参考资料:

- Pandas官方文档:Pandas.pydata.org/docs/">https://Pandas.pydata.org/docs/

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号