Die Pandas-Funktion drop_duplicates ist ein leistungsstarkes Tool zum Entfernen doppelter Zeilen aus einem DataFrame, aber was wäre, wenn Sie nur Sie möchten Zeilen löschen, die Duplikate in einer Teilmenge von sind Spalten?
Betrachten Sie den folgenden DataFrame:
A | B | C |
---|---|---|
foo | 0 | A |
foo | 1 | A |
foo | 1 | B |
bar | 1 | A |
Angenommen, Sie möchten Zeilen löschen, die in den Spalten A und C übereinstimmen. In diesem Fall möchten Sie um die Zeilen 0 und 1 zu löschen.
Um dies zu erreichen, können Sie die Funktion „drop_duplicates“ verwenden, wobei der Parameter „keep“ auf „False“ gesetzt ist. Dieser Parameter gibt an, wie mit doppelten Zeilen umgegangen wird. Standardmäßig ist „keep“ auf „first“ eingestellt, was bedeutet, dass das erste Vorkommen einer doppelten Zeile beibehalten wird. Wenn Sie „keep“ auf „Falsch“ setzen, werden alle doppelten Zeilen gelöscht.
Der folgende Code zeigt, wie Zeilen mit doppelten Werten in den Spalten A und C gelöscht werden:
import pandas as pd df = pd.DataFrame({"A": ["foo", "foo", "foo", "bar"], "B": [0, 1, 1, 1], "C": ["A", "A", "B", "A"]}) # Drop rows with duplicate values in columns 'A' and 'C' df = df.drop_duplicates(subset=['A', 'C'], keep=False) print(df)
Ausgabe:
A B C 2 foo 1 B 3 bar 1 A
Wie Sie sehen können, wurden die Zeilen 0 und 1 gelöscht, da es sich um Duplikate in Bezug auf die Spalten A und C handelt.
Das obige ist der detaillierte Inhalt vonWie lösche ich doppelte Zeilen in bestimmten Spalten in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!