在 Pandas 中,可以使用 groupby 函数按多列进行分组。下面是一个示例代码:
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)
# 按多列分组
grouped = df.groupby(['A', 'B'])
for name, group in grouped:
print(name)
print(group)
输出结果:
('bar', 'one')
A B C D
4 bar one 5 11
5 bar one 6 12
('bar', 'two')
A B C D
3 bar two 4 10
('foo', 'one')
A B C D
0 foo one 1 7
1 foo one 2 8
('foo', 'two')
A B C D
2 foo two 3 9
在上面的示例中,我们首先创建了一个包含多列的 DataFrame。然后,我们使用 groupby 函数将 DataFrame 按列 'A' 和 'B' 进行分组。最后,我们通过遍历分组后的结果,打印出每个分组的名称和对应的数据。
上一篇:按多列分组
下一篇:按多列分组并根据列值提取前x行