【发布时间】:2018-08-07 19:34:57
【问题描述】:
我有以下 Pandas 数据框:
ID Name Mascot
0 Team 1 Cat
1 Team 2 Rabbit
2 Team 1 Cat
3 Team 3 Rat
我想将每个组中的最小 ID 分配给所有记录,以便能够将重复记录与重复数据删除后保留的 ID 相关联。因此,我的预期输出是:
ID Name Mascot Parent_ID
0 Team 1 Cat 0
1 Team 2 Rabbit 1
2 Team 1 Cat 0
3 Team 3 Rat 3
我已经尝试了以下方法,但这是为每个组分配新的 ID。
df['Parent_ID'] = pd.factorize(list(zip(df['Name'], df['Mascot'])))[0] + 1
输出是:
ID Name Mascot Parent_ID
0 Team 1 Cat 1
1 Team 2 Rabbit 2
2 Team 1 Cat 1
3 Team 3 Rat 3
【问题讨论】: