python合并数据帧,同时有条件地选择键

时间:2015-11-25 15:58:13

标签: python join pandas merge dataframe

我的问题的简化问题是,lookup table下有id_A个缺失值很多:

first   last    id_A
A1      B1
A1      B1      C2
A3      B3      C4   
A4      B4

我想将查找表与另一个表table B合并,该表在id_B下也有缺失值:

fName   lName   id_B    information_col
A1      B1      C1        104
A1      B1                29
A3      B3      C4        123
A4      B4                23

如果可能,我想在left_on = 'id_A', right_on = 'id_B'上合并这两个数据帧。对于那些缺少id_Aid_B的人,我想合并left_on =['first','last'], right_on = ['fName','lName']上的两个数据帧。整个结果就像一个左连接,所以我只用我的查找表中显示的键来保存数据。

我可以分别在id_Afirst and last上合并,然后将两个合并的数据框附加在一起,从而实现我的目标,这是无效的。我相信有更简单的方法,我想听听你的建议,谢谢。

P.S。 first / fName代表名字,last / lName代表姓氏。

所需的输出是:

first   last    id_A    information_col
A1      B1                  104
A1      B1      C2          29
A3      B3      C4          123
A4      B4                  23

0 个答案:

没有答案