更新时间:2023-11-22 10:21:40
使用 GroupBy.ngroup
:
df['grp'] = df.groupby(['A', 'B', 'C']).ngroup() + 1
print (df)
A B C grp
0 1 3 5 1
1 1 4 5 2
2 1 4 5 2
3 2 4 5 3
如果列已排序:
df['grp'] = pd.factorize([tuple(x) for x in df.values])[0] + 1