Cómo identificar la primera aparición de filas duplicadas en el marco de datos de los pandas de Python
Tengo un DataFrame de pandas con valores duplicados para un conjunto de columnas. Por ejemplo:
df = pd.DataFrame({'Column1': {0: 1, 1: 2, 2: 3}, 'Column2': {0: 'ABC', 1: 'XYZ', 2: 'ABC'}, 'Column3': {0: 'DEF', 1: 'DEF', 2: 'DEF'}, 'Column4': {0: 10, 1: 40, 2: 10})
In [2]: df
Out[2]:
Column1 Column2 Column3 Column4 is_duplicated dup_index
0 1 ABC DEF 10 False 0
1 2 XYZ DEF 40 False 1
2 3 ABC DEF 10 True 0
La fila (1) y (3) son iguales. Esencialmente, la fila (3) es un duplicado de la fila (1).
Estoy buscando la siguiente salida:
Is_Duplicate
, que contiene si la fila es un duplicado o no [se puede lograr usando el método "duplicado" en las columnas del marco de datos (Columna2, Columna3 y Columna4)]
Dup_Index
El índice original de la fila duplicada.
In [3]: df
Out[3]:
Column1 Column2 Column3 Column4 Is_Duplicate Dup_Index
0 1 ABC DEF 10 False 0
1 2 XYZ DEF 40 False 1
2 3 ABC DEF 10 True 0