a = pd.DataFrame({'药品名':['感康','感冒灵','皮炎平'], '商品号':[np.nan,'0023','0045'],'条形码':['69000000001',np.nan,'69000000003'], '规格':['12片','8袋','15克']})
b = pd.DataFrame({'药品名':['感康','感冒灵','皮炎平'], '商品号':['0012','0023',np.nan,],'条形码':['69000000001','69000000002','69000000003'], '零售价':[10, 9, 7.5]})
我想通过‘商品号’和‘条形码’这两列,合并这两个表格
但这两列,只要其中一列相等即可合并,我要的结果如下:
如何用最少的代码,实现这个结果?
pd.merge(a.fillna(b), b.fillna(a), on=['药品名','商品号','条形码'])
c = pd.concat([a[["药品名","商品号","条形码"]],b[["药品名","商品号","条形码"]]]).dropna()
c["规格"]=a["规格"]
c["零售价"]=b["零售价"]