es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Combinar dos dataframes

Tengo dos dataframes:
df1 tiene las columnas – id, Texto, imageid, etiqueta
df2 tiene las columnas – imageid, imagenurl

Quiero combinar ambos dataframes de manera que la imagenurl se enlace con su correspondiente imageid en df1.

¿Puede alguien guiarme sobre cómo hacer esto?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Se pueden fusionar ambos dataframes en la columna ‘imageid’ utilizando la función merge en pandas.

    import pandas as pd
    
    # crear dataframes de muestra
    df1 = pd.DataFrame({'id': [1, 2, 3],
                        'Texto': ['abc', 'def', 'ghi'],
                        'imageid': ['img1', 'img2', 'img3'],
                        'etiqueta': ['a', 'b', 'c']})
    
    df2 = pd.DataFrame({'imageid': ['img1', 'img2', 'img3'],
                        'imageurl': ['url1', 'url2', 'url3']})
    
    # fusionar los dataframes en 'imageid'
    df_merged = df1.merge(df2, on='imageid')
    

    Esto creará un nuevo dataframe ‘df_merged’ que tendrá las columnas ‘id’, ‘Texto’, ‘imageid’, ‘etiqueta’ y ‘imageurl’.

    Se puede optar por eliminar cualquier columna que no sea necesaria después de la fusión.

    # eliminar la columna 'imageid' ya que ya no se necesita
    df_merged.drop('imageid', axis=1, inplace=True)
    

    Esto eliminará la columna ‘imageid’ del dataframe ‘df_merged’.

    El dataframe final ‘df_merged’ tendrá las columnas ‘id’, ‘Texto’, ‘etiqueta’ e ‘imageurl’ y la ‘imageurl’ estará vinculada a su ‘imageid’ correspondiente en el df1.

Comments are closed.