我想在两个数据帧之间进行映射
df_list
a b
0 1 3
1 2 1
2 3 4
3 2 4
4 3 1
和df_name
num_l name
0 1 Mark
1 2 John
2 3 Sara
3 4 David
然后得到这样的结果
result
a b name_a name_b
0 1 3 Mark Sara
1 2 1 John Mark
2 3 4 Sara David
3 2 4 John David
4 3 1 Sara Mark
首先,我尝试创建从“ a”,“名称”和“ b”,“名称”收集的数据帧,然后将其连接在一起,但是引用df_list的顺序不起作用。预先谢谢你。
答案 0 :(得分:2)
您可以使用replace
df2=df.replace(dict(zip(df1.num_l,df1.name))).add_prefix('name_')
pd.concat([df,df2],1)
a b name_a name_b
0 1 3 Mark Sara
1 2 1 John Mark
2 3 4 Sara David
3 2 4 John David
4 3 1 Sara Mark