📜  agg 自定义列名 (1)

📅  最后修改于: 2023-12-03 15:13:17.080000             🧑  作者: Mango

如何使用 agg 自定义列名

在 Pandas 中,agg 函数可以通过聚合和应用一个或多个函数来汇总数据。有时候,我们需要自定义聚合数据的列名,以便于数据的下一步操作。本文将介绍如何使用 agg 函数来自定义聚合数据的列名。

1. 原始数据

首先,我们需要有一份原始数据。我们使用下面的代码创建一个数据表:

import pandas as pd 

data = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
    'Group': ['A', 'B', 'A', 'B', 'B'],
    'Score': [85, 65, 78, 90, 82],
    'Age': [25, 30, 22, 28, 33]
})

原始数据如下:

| | Name | Group | Score | Age | |---:|:--------|:--------|:--------|:------| | 0 | Alice | A | 85 | 25 | | 1 | Bob | B | 65 | 30 | | 2 | Charlie | A | 78 | 22 | | 3 | David | B | 90 | 28 | | 4 | Emily | B | 82 | 33 |

2. 使用 agg 自定义列名

我们可以通过下面的代码使用 agg 函数来计算数据表中每个分组的平均年龄和分数,并自定义列名为 AvgAgeAvgScore

result = data.groupby('Group').agg(
    AvgAge=('Age', 'mean'),
    AvgScore=('Score', 'mean')
).reset_index()

其中,('Age', 'mean') 表示对年龄进行求平均值操作,('Score', 'mean') 表示对分数进行求平均值操作。AvgAgeAvgScore 是自定义的列名。

计算结果如下:

| | Group | AvgAge | AvgScore | |---:|:--------|:--------|:-----------| | 0 | A | 23.5 | 81.5 | | 1 | B | 30.333333 | 79 |

可以看到列名已经成功地自定义为 AvgAgeAvgScore

3. 结论

通过使用 agg 函数,我们可以很容易地自定义聚合数据的列名。这可以使数据更加清晰易读,并方便数据下一步的操作。