"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo encontrar filas presentes en un marco de datos pero no en otro (comparando df1 y df2)?

¿Cómo encontrar filas presentes en un marco de datos pero no en otro (comparando df1 y df2)?

Publicado el 2024-11-07
Navegar:593

How to Find Rows Present in One Dataframe but Not in Another (Comparing df1 and df2)?

Comparación de marcos de datos: encontrar filas presentes en uno pero no en el otro

Comparar marcos de datos para identificar diferencias es crucial para garantizar la calidad de los datos y fusionarlos operaciones. En este caso, tenemos dos marcos de datos (df1 y df2) con una estructura específica y necesitamos determinar las filas presentes en df2 pero no en df1.

Inicialmente, los intentos de comparar marcos de datos usando df1! = df2 dieron como resultado un error. Este enfoque sólo funciona para marcos de datos con filas y columnas idénticas. Para encontrar diferencias simétricas, necesitamos un enfoque diferente.

Un método implica concatenar los marcos de datos:

df = pd.concat([df1, df2])
df = df.reset_index(drop=True)

Luego, agrupando el marco de datos concatenado por todas las columnas:

df_gpby = df.groupby(list(df.columns))

A continuación, identificamos los registros únicos obteniendo los valores de índice donde solo existe una fila:

idx = [x[0] for x in df_gpby.groups.values() if len(x) == 1]

Usando estos índices, podemos filtrar el marco de datos para obtener el resultado deseado:

df.reindex(idx)

Este enfoque proporciona las filas presentes en df2 pero ausentes en df1 basado en la comparación del índice de fecha y la columna de fruta.

Declaración de liberación Este artículo se reimprime en: 1729343178 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3