在这里,我有一个DF,其中多个ID属于同一封电子邮件。我想将每个重复的电子邮件的所有重复电子邮件的ID更改为相同,并且不删除任何行。
样本DF:
ID Email
1 a@gmail.com
2 a@gmail.com
3 b@gmail.com
4 c@gmail.com
5 c@gmail.com
期望DF:
ID Email
1 a@gmail.com
1 a@gmail.com
3 b@gmail.com
4 c@gmail.com
4 c@gmail.com
答案 0 :(得分:2)
IIUC
df['ID']=df.groupby('Email').ID.transform('first')
df
Out[195]:
ID Email
0 1 a@gmail.com
1 1 a@gmail.com
2 3 b@gmail.com
3 4 c@gmail.com
4 4 c@gmail.com