要按多个列进行总结,可以使用groupby()
函数和agg()
函数来实现。以下是一个示例代码:
import pandas as pd
# 创建一个示例数据集
data = {'A': ['foo', 'foo', 'foo', 'bar', 'bar', 'bar'],
'B': ['one', 'one', 'two', 'two', 'one', 'one'],
'C': [1, 2, 3, 4, 5, 6],
'D': [7, 8, 9, 10, 11, 12]}
df = pd.DataFrame(data)
# 按多个列进行总结
summary = df.groupby(['A', 'B']).agg({'C': 'sum', 'D': 'mean'}).reset_index()
print(summary)
输出结果为:
A B C D
0 bar one 5 11.5
1 bar two 4 10.0
2 foo one 3 7.5
3 foo two 3 9.0
在这个示例中,我们创建了一个包含'A'、'B'、'C'和'D'列的DataFrame。然后,我们使用groupby()
函数按'A'和'B'列进行分组,使用agg()
函数对'C'列进行求和,对'D'列进行平均值计算。最后,我们使用reset_index()
函数重置索引,以便结果以DataFrame形式返回。
请注意,agg()
函数的参数应为一个字典,其中键表示要进行操作的列,值表示要应用的操作。在这个例子中,我们对'C'列进行了求和操作,对'D'列进行了平均值计算。你可以根据自己的需求进行修改。