首页 > 解决方案 > 用另一个字典的值替换字典的值

问题描述

1.我有一个数据框输入:

emp data
pp  ab
qq  bc
rr  cs
ss  dp

我将其转换为字典:

df_r.to_dict('dict')

2.我有另一个数据框:

ID name
1  s
2  ab
3  dp
4  t

字典:

df.to_dict('dict')

预期结果:我想根据数据的 emp 值替换 name 的值

ID name
1  s
2  pp
3  ss
4  t

代码:我试过

df= [df_r.get(x, x) for x in df['Value'].values]
df

问题:不做任何值的替换。

标签: pythonpandasdataframedictionary

解决方案


尝试:

df2["name"] = df2["name"].map(df1.set_index("data")["emp"]).fillna(df2["name"])
print(df2)

印刷:

   ID name
0   1    s
1   2   pp
2   3   ss
3   4    t

推荐阅读