在进行pandas groupby时,可以使用索引号来选择列。可以通过在groupby之后使用agg
函数来实现。agg
函数可以接受一个字典作为参数,字典的键是要聚合的列名或索引号,值是要应用的聚合函数。以下是一个示例代码:
import pandas as pd
# 创建一个示例DataFrame
data = {'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'two', 'two', 'one', 'two', 'one'],
'C': [1, 2, 3, 4, 5, 6, 7, 8],
'D': [10, 20, 30, 40, 50, 60, 70, 80]}
df = pd.DataFrame(data)
# 使用索引号选择列进行groupby
result = df.groupby('A').agg({0: 'sum', 1: 'mean'})
print(result)
输出结果如下:
0 1
A
bar 80 40.0
foo 24 12.0
在上述示例中,我们使用groupby
函数将DataFrame按照'A'列进行分组,然后使用agg
函数来对分组后的数据进行聚合操作。字典的键0和1分别代表索引号,值'sum'和'mean'分别代表对应的聚合函数。最后打印出聚合结果。
需要注意的是,索引号是从0开始的整数,表示列在DataFrame中的位置。如果要选择多个列,可以使用列表来表示多个索引号。另外,还可以使用列名来选择列进行groupby,只需将列名作为字典的键即可。
关于pandas的groupby操作,可以参考腾讯云的文档:pandas groupby操作
领取专属 10元无门槛券
手把手带您无忧上云