我对 pandas groupby 函数的行为有点困惑:
df = pd.DataFrame({"row_id":[1,2,3], "group": [1,2,2], "col1":[1,100,2], "col2":[2,200,2]})
for i, e in df.groupby("group", as_index=True):
print(e.index)
在这里,我希望我将“组”列作为新索引。但是打印返回:
Int64Index([0], dtype='int64')
Int64Index([1, 2], dtype='int64')
因此保留了“旧”索引。此外,“组”列仍然作为单独的列存在。
不应该是这样的结果:
Int64Index([1], dtype='int64')
Int64Index([2, 2], dtype='int64')
我不明白逻辑,尤其是。因为 as_index=False 不会改变任何东西。
Ps 我正在使用熊猫 1.3.5