假设我有2个数据框:
DF1:
Col1 | Col2 | Col3
XCN000370 / 17-18C | XCN0003711718C | 0003971718
DF2
Col1 | Col2 | Col3
XCN0003711718C | XCN0003711718C | 0003971718
我希望他们像这样合并:
现在通过交换DF1和DF2并保持不匹配来重复此操作
有什么想法吗?
答案 0 :(得分:0)
我认为没有一行代码可以做到这一点。因此,请按照以下步骤操作。
1)首先,创建一个列表:
dfs = []
2)合并数据框上的每个条件:
dfs.append(pd.merge(df1,df2,left_on='col1',right_on='col1',how='outer')).dropna()
dfs.append(pd.merge(df1,df2,left_on='col1',right_on='col2',how='outer')).dropna()
dfs.append(pd.merge(df1,df2,left_on='col1',right_on='col3',how='outer')).dropna()
^重复
3)现在将它们串联:
pd.concat(dfs)