df.groupby.agg
时间: 2024-07-08 20:01:15 浏览: 86
详解python中groupby函数通俗易懂
3星 · 编辑精心推荐
`df.groupby.agg` 是 Pandas 库中用于数据分组和聚合的关键功能。在 Python 数据分析库 Pandas 中,DataFrame 对象经常用来处理结构化的表格数据。当你有一个 DataFrame,并想要根据某些列的值对数据进行分组,然后计算每个组内的统计信息(如平均值、总和、计数等),这时就可以用到 `groupby` 和 `agg` 方法。
具体操作流程如下:
1. **groupby()**: 这个方法用于按指定列或多列对 DataFrame 进行分组。例如,`df.groupby('column_name')` 将 DataFrame 根据 'column_name' 列的值进行分组。
2. **agg()**: 后面接一个参数,这个参数是一个包含多个聚合函数的字典或字符串列表。你可以选择内置的聚合函数(如 'sum', 'mean', 'count', 'min', 'max' 等)来计算每个组的值,也可以自定义函数。例如,`agg({'column_to_agg': ['sum', 'mean']})` 表示对 'column_to_agg' 列求和和平均值。
举个例子:
```python
import pandas as pd
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob'],
'Age': [20, 25, 30, 22, 27],
'Score': [85, 90, 88, 92, 87]
}
df = pd.DataFrame(data)
# 按 Name 分组并计算 Age 和 Score 的平均值
result = df.groupby('Name').agg({'Age': 'mean', 'Score': 'mean'})
```
这将返回一个新的 DataFrame,其中每一行代表一个 Name 组及其对应的 Age 平均值和 Score 平均值。
阅读全文