如何对未设置列名的Pandas DataFrame按列索引值分组
Pandas无自定义列名DataFrame按前两列分组解决方案
错误原因
你之前的写法存在两处问题:
- 需求为按两列分组,但仅传入了单个列的标识,不满足分组参数要求
- 未匹配列名类型:默认未设置列名的DataFrame列名为整数类型
0、1,传入字符串"0"无法匹配;如果你的列名被意外修改为字符串类型,传入整数0也无法匹配,两种写法都存在兼容问题
正确写法
写法1(适配默认整数列名场景)
直接传入整数列名的列表即可:
grouped_Source = Source.groupby([0, 1])
写法2(全场景兼容,不依赖列名类型)
直接通过列的索引位置指定分组列,无需关心列名的实际类型:
# 取索引为0、1的两列作为分组依据 grouped_Source = Source.groupby(Source.columns[[0, 1]])
内容的提问来源于stack exchange,提问作者Abhiram C D
相关产品推荐
相关产品推荐

