Heim >Backend-Entwicklung >Python-Tutorial >Wie entferne ich aufeinanderfolgende Duplikate in Pandas?

Wie entferne ich aufeinanderfolgende Duplikate in Pandas?

Barbara Streisand
Barbara StreisandOriginal
2024-11-15 04:09:02230Durchsuche

How to Remove Consecutive Duplicates in Pandas?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn