繁体   English   中英

用另一个 dataframe 列的值替换 dataframe 列值

[英]replace dataframe column values with values from an other dataframe column

让我再解释一下我的问题。 我有一个 dataframe,有 ID、姓名和姓氏,我们称他为 df_src ex:

ID        Name       Surname
177015H   LAURE      Thomas
198786X   ANGEARD    Audrey
136235G   EYSSERIC   Laurent
198786X   ANGEARD    Audrey

在这个 dataframe 中,我有多个重复的值。 因为一个人可以管理不同的人。
另一方面,我的第二个 dataframe 包含前面的每一行,没有重复值 + 假名化数据,我们称他为 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_src 中与 df_tem 上的值相似的所有值。 对于 ex 将 177015H LAURE Thomas 的所有重复值替换为 127345H ELOR Lori 等等。

我尝试使用

df_src.replace(to_replace=dfsrc['column'], value=df_tem['column'], inplace=True)

只是为了没有回报。 我花了好几个小时都没有找到使用 pandas 的方法。

你有什么主意吗? 任何帮助将不胜感激。

我会合并两者,然后重命名列:

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"})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM