Python Pandas 在第一次匹配时合并右连接

Python Pandas merge right join on first match

我有两个数据框

第一帧是我的 ID,一些 'old code' 匹配一个 'Master ID'。一些旧代码与主 ID 不匹配。

ID 数据帧

MASTER ID  OLD CODE 

  MASTER1    1A
  MASTER1    1B
  MASTER2    2
  MASTER3    3
             4

销售额

OLD CODE  Salesvalues  
1A         10           
1B         15           
2           6           
3           8   
4           5

如果我进行右联接或外联接,它 returns 行比我原​​来的销售额 table 多。我如何在第一个匹配 'MASTER ID' 匹配上进行连接 并保持相同的行数(没有多个重复行)。我想如果 'master ID' 上的 'old code' 没有匹配项,那将 returns NA。

预期合并数据帧

  OLD CODE  Salesvalues  MASTER ID (Join column) 
    1A         10           MASTER1
    1B         15           MASTER1
    2           6           MASTER2
    3           8           MASTER3
    4           5             NA

看看这是否适合您。

Sales.merge(ID Dataframe,on='OLD_CODE',how ='outer')