如何用pandas groupby的agg函数对分组后的dataframe进行操作
时间: 2023-05-28 07:04:56 浏览: 177
pandas的groupby函数允许我们按照指定的列或行对数据进行分组,并对每个分组应用一个函数。在groupby之后,我们可以使用agg函数对每个分组进行操作。
下面是一个使用agg函数对一个分组后的dataframe进行操作的示例:
```python
import pandas as pd
# 创建一个示例dataframe
df = pd.DataFrame({
'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
'C': [1, 2, 3, 4, 5, 6, 7, 8],
'D': [10, 20, 30, 40, 50, 60, 70, 80]
})
# 按照A列进行分组,并对分组后的每个分组计算C和D列的平均值
grouped = df.groupby('A').agg({'C': 'mean', 'D': 'mean'})
print(grouped)
```
输出:
```
C D
A
bar 4.000000 40.0
foo 4.666667 35.0
```
在上面的示例中,我们按照'A'列进行分组,并对分组后的每个分组计算'C'和'D'列的平均值。agg函数的参数是一个字典,其中键表示要进行操作的列,值表示要应用的函数。在这种情况下,我们使用'mean'函数计算列的平均值。
除了'mean'函数,agg函数还支持许多其他的函数,例如'sum'、'max'、'min'、'count'等。我们可以根据需要选择适当的函数进行操作。
阅读全文