让我再解释一下我的问题。我有一个ID,名称和姓氏的数据框,我们称他为df_src ex:
ID Name Surname
177015H LAURE Thomas
198786X ANGEARD Audrey
136235G EYSSERIC Laurent
198786X ANGEARD Audrey
在此数据框中,我有多个重复的值。由于一个人可以管理不同的人。
另一方面,我的第二个数据帧包含先前的每行,但没有重复的值+假名化数据,我们称他为df_tem ex:
ID Name Surname FakeID FakeName FakeSurname
177015H LAURE Thomas 127345H ELOR Lori
198786X ANGEARD Audrey 112846X RELARD Pierre
136235G EYSSERIC Laurent 108456G SERIC Marc
... ... ... .... ... ...
我想在这里完成的是用伪造值替换df_tem上与df_tem相似的所有值。例如,用127345H ELOR Lori将所有重复的177015H LAURE Thomas值替换为
我尝试使用
df_src.replace(to_replace=dfsrc['column'], value=df_tem['column'], inplace=True)
只是没有任何回报。 我已经花了好几个小时才能找到与熊猫共处的方式。
你有什么主意吗?任何帮助将不胜感激。
答案 0 :(得分:0)
我将两者合并,然后重命名列:
df = df_src.merge(df_tem, on=["ID", "Name", "Surname"], how="left"
).drop(columns=["ID", "Name", "Surname"]
).rename(columns={"FakeID": "ID", "FakeName": "Name", "FakeSurname": "Surname"})