我有两个数据帧,如下所示:

df1:
col1    col2    col3
  1       2       A
  1       2       A
  3       4       B
  3       4       B

df2:
 col1    col2
  1       2
  3       4


我想将df1的col3的值放在df2中,如下所示:

result:
col1    col2    col3
 1        2       A
 3        4       B


我尝试使用以下代码进行映射,但收到错误消息,该怎么办

df2['col3'] = df2[['col1','col2]].map(df1.set_index(['col1','col2])['col3'])

最佳答案

使用:

df11 = df1[['col1','col2','col3']].drop_duplicates(['col1','col2'])
df = df2.merge(df11, on=['col1','col2'], how='left')
print (df)
   col1  col2 col3
0     1     2    A
1     3     4    B

关于python - 如何使用多列python进行映射,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51895536/

10-12 03:15
查看更多