MainDF.merge(dfA, how = 'left', on='key')
,它将为dfA和MainDF中的键添加“价目表”列到MainDF中。这会将NaN放到MainDF中的所有键中,而不是dfA中MainDF.merge(dfB, how = 'left', on='key')
来在MainDF中添加密钥的资费,但在dfA中不需要。我应该如何以python方式进行操作?我可以添加一个新列,它是riff_x或riff_y,但是我觉得不太优雅。
谢谢
答案 0 :(得分:0)
在合并dfA
之前,您可以先concat
dfB
和MainDF
:
MainDF.merge(pd.concat([dfA, dfB], axis=0), how='left', on='key')
答案 1 :(得分:0)
您需要这样的东西吗?
dfA = pd.DataFrame({'tariff': [1, 2, 3], 'A': list('abc')})
dfB = pd.DataFrame({'tariff': [4, 5, 6], 'A': list('def')})
dfJoin = pd.concat([dfA, dfB], ignore_index=True)
A B tariff
0 a NaN 1
1 b NaN 2
2 c NaN 3
3 NaN d 4
4 NaN e 5
5 NaN f 6
现在您可以与dfJoin
合并。