Heim >Backend-Entwicklung >Python-Tutorial >Wie entferne ich doppelte Zeilen über mehrere Spalten in Pandas?

Wie entferne ich doppelte Zeilen über mehrere Spalten in Pandas?

DDD
DDDOriginal
2024-12-19 10:24:15339Durchsuche

How to Remove Duplicate Rows Across Multiple Columns in Pandas?

Entfernen von Duplikaten über mehrere Spalten hinweg in Python Pandas

Die Funktion drop_duplicates in Pandas bietet eine praktische Möglichkeit, doppelte Zeilen basierend auf angegebenen Spalten zu entfernen. Was aber, wenn Sie Duplikate nicht in einer einzelnen Spalte, sondern in einer Teilmenge mehrerer Spalten löschen möchten?

Um dies zu erreichen, können wir die Leistungsfähigkeit von drop_duplicates zusammen mit dem Subset-Parameter nutzen. Indem Sie die Liste der Spalten angeben, in denen nach Duplikaten gesucht werden soll, können Sie sicherstellen, dass Zeilen, die in jeder Kombination dieser Spalten übereinstimmen, eliminiert werden.

Betrachten Sie das folgende Beispiel:

    A   B   C
0   foo 0   A
1   foo 1   A
2   foo 1   B
3   bar 1   A

Unser Ziel ist um Zeilen zu löschen, die in den Spalten A und C übereinstimmen. Dadurch würden die Zeilen 0 und 1 entfernt, da sie in beiden Spalten die gleichen Werte haben.

Verwenden drop_duplicates, wir können dies mit dem folgenden Code erreichen:

import pandas as pd

df = pd.DataFrame({"A":["foo", "foo", "foo", "bar"], "B":[0,1,1,1], "C":["A","A","B","A"]})
df.drop_duplicates(subset=['A', 'C'], keep=False)

Der Subset-Parameter gibt die Spalten an, die für die Duplikaterkennung verwendet werden sollen. Der auf False gesetzte Keep-Parameter stellt sicher, dass alle doppelten Zeilen entfernt werden.

Der resultierende DataFrame sieht wie folgt aus:

    A   B   C
0   foo 0   A
2   foo 1   B
3   bar 1   A

Zeilen 0 und 1 wurden gelöscht, weil sie übereinstimmten sowohl A als auch C, wodurch der DataFrame basierend auf diesen Spalten effektiv vereinheitlicht wird.

Das obige ist der detaillierte Inhalt vonWie entferne ich doppelte Zeilen über mehrere Spalten 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