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

Antworten auf die Frage(2)

Ihre Antwort auf die Frage