我有两个数据框,我想基于几列加入。但是,我的加入逻辑中有一个'OR',例如我想基于列['A','B','C']或['A','B','D']加入。我有以下代码要基于一组列进行联接,但是如何添加第二组列?
pd.merge(df1,df2, how='inner',left_on = ['A','B','C'], right_on = ['A','B','C'])
答案 0 :(得分:0)
尝试一下,因为left_on
和right_on
相同,只需使用on
:
d_1 = pd.merge(df1,df2, how='inner', on = ['A','B','C'])
d_2 = pd.merge(df1,df2, how='inner', on = ['A','B','D'])
d_3 = pd.concat([d_1,d_2]).drop_duplicates()