¿Cómo combino dos marcos de datos en Python Pandas?


12

Tengo dos marcos de datos df1 y df2 y me gustaría fusionarlos en un solo marco de datos. Es como si df1 y df2 se hubieran dividido verticalmente en un solo cuadro de datos en el centro, como rasgar un trozo de papel que contiene una lista por la mitad, de modo que la mitad de las columnas van en un papel y la otra mitad en el otro. Me gustaría fusionarlos nuevamente. ¿Cómo lo hago?

Respuestas:


7

Pandas tiene una función de fusión incorporada. Por favor, consulte la documentación

End-result should be something like this:
df_merged = pd.merge(df1, df2, left_on=['name_indexcolumn_df1_here'],
              right_on=['name_indexcolumn_df2_here'],
              how='inner')

4

Si divide el DataFrame "verticalmente", entonces tiene dos DataFrames que tienen el mismo índice.

Puede usar la función de fusión o la función concat .

Con concat with sería algo como esto:

pandas.DataFrame.concat([df1,df2], axis=1)

Con fusionar con sería algo como esto:

pandas.Dataframe.merge([df1,df2], left_index=True)

Para las opciones de intercalación más complejas ver el Merge, unirse y concat pandas tutorial .


1
fusionar está mal ... ¿has intentado ejecutar el código?
Jorge Leitao
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.