У меня есть два кадра данных:
df_old:
A B C D E
1 b1 c d1 e1
2 b2 c d2 e2
3 b3 c d3 e3
df:
A B C D F
2 b2 c2 d0 f2
4 b4 c1 d4 f4
5 b5 c2 d5 f5
Что я хочу, чтобы они слились в:
A B C D E F
1 b1 c d1 e1
2 b2 c2 d2 e2 f2
3 b3 c d3 e3
4 b4 c1 d4 f4
5 b5 c2 d5 f5
Я использую этот код, но есть проблема, когда речь идет о пропущенных строках, как в df ['A'] строках 1 и 3:
df1 = df_old.loc[:,df_old.columns != 'C']
df2 = df.loc[:len(df_old)-1, df.columns != 'B']
df2 = df2.loc[:, df2.columns != 'D']
df_m = pandas.merge(df1, df2,
how='outer', on=['A'])
df_m = pandas.merge(df_m, df.loc[len(df_old)-1:, ],
how='outer', on=['A', 'B', 'D', 'F'])