Identifizieren des ersten Auftretens doppelter Zeilen in Python pandas Dataframe
Ich habe einen Pandas DataFrame mit doppelten Werten für eine Reihe von Spalten. Zum Beispiel:
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
Zeile (1) und (3) sind gleich. Im Wesentlichen ist Zeile (3) ein Duplikat von Zeile (1).
Ich suche folgende Ausgabe:
Is_Duplicate
, der angibt, ob die Zeile ein Duplikat ist oder nicht [kann mithilfe der Methode "dupliziert" für Datenrahmenspalten (Spalte2, Spalte3 und Spalte4) ausgeführt werden]
Dup_Index
der ursprüngliche Index der doppelten Zeile.
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