Pandas - mescla dois DataFrames com nomes de colunas idênticos
Eu tenho dois quadros de dados com nomes de colunas idênticos e identificações idênticas na primeira coluna. Com exceção da coluna ID, todas as células que contêm um valor em um DataFrame contêm NaN na outra. Aqui está um exemplo de como eles se parecem:
ID Cat1 Cat2 Cat3
1 NaN 75 NaN
2 61 NaN 84
3 NaN NaN NaN
ID Cat1 Cat2 Cat3
1 54 NaN 44
2 NaN 38 NaN
3 49 50 53
Quero mesclá-los em um DataFrame, mantendo os mesmos nomes de coluna. Portanto, o resultado ficaria assim:
ID Cat1 Cat2 Cat3
1 54 75 44
2 61 38 84
3 49 50 53
Eu tentei:
df3 = pd.merge(df1, df2, on='ID', how='outer')
O que me deu um DataFrame contendo duas vezes mais colunas. Como mesclar os valores de cada DataFrame em um?