Aufeinanderfolgende Duplikate in Pandas entfernen
Die Methode drop_duplicates() von Pandas eignet sich zwar zum Entfernen aller doppelten Werte, erkennt jedoch keine aufeinanderfolgenden Vorkommen . Um dieser Einschränkung zu begegnen, gibt es effiziente Methoden, um selektiv nur aufeinanderfolgende Duplikate zu löschen.
Ein Ansatz verwendet die Verschiebungsfunktion, um den aktuellen Wert mit dem vorherigen zu vergleichen:
a.loc[a.shift() != a]
Diese Logik gibt zurück eine Maske, in der aufeinanderfolgende Duplikate durch falsche Werte gekennzeichnet sind. Die loc-Methode wählt dann nur die Zeilen mit wahren Werten aus und entfernt so effektiv die aufeinanderfolgenden Duplikate.
Eine andere Methode nutzt die Diff-Funktion, um Änderungen zu erkennen:
a.loc[a.diff() != 0]
Dieser Ansatz ist jedoch weniger effizient für große Datensätze aufgrund des mit der Differenzierung verbundenen Overheads Berechnung.
Aktualisieren
Es ist zu beachten, dass die Standardverschiebungsperiode 1 ist, sodass Shift() und Shift(1) äquivalente Ergebnisse liefern:
a.loc[a.shift(1) != a]
Dadurch wird sichergestellt, dass der erste aufeinanderfolgende Wert korrekt als Duplikat identifiziert wird.
Das obige ist der detaillierte Inhalt vonWie entferne ich aufeinanderfolgende Duplikate in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!