Zum Hauptinhalt springen

So entfernen Sie Duplikate in Pandas: Ein einfacher Leitfaden mit Beispielen

Wenn Sie mit Daten arbeiten, müssen Sie häufig Duplikate entfernen. Duplikate können die Analyseergebnisse verzerren, die Datenmenge erhöhen und die Leistung von Algorithmen verlangsamen. Die Pandas-Bibliothek verfügt über praktische Methoden zum Entfernen von Duplikaten, mit denen Sie große Datenmengen schnell und effizient verarbeiten können.

Die grundlegende Methode zum Entfernen von Duplikaten in Pandas - drop_duplicates(). Es ermöglicht Ihnen, Zeilen mit vollständig übereinstimmenden Werten in den ausgewählten Spalten zu löschen. Es wird normalerweise auf einen Dataframe oder eine Serie angewendet und kann verschiedene Parameter verwenden, um den Prozess zum Entfernen von Duplikaten anzupassen.

Wenn Sie Duplikate nur für bestimmte Spalten entfernen möchten, können Sie die Liste der Spaltennamen an einen Parameter übergeben subset. Auf diese Weise werden nur Zeilen gelöscht, in denen die Werte in den angegebenen Spalten vollständig übereinstimmen. Wenn Sie beispielsweise Duplikate nur in den Spalten "Vorname" und "Nachname" entfernen möchten, können Sie den folgenden Code verwenden:

Sie können auch angeben, welches der gefundenen Duplikate gelöscht werden soll. Parameter keep akzeptiert einen von drei Werten: 'first' (nur das erste Vorkommen entfernen), 'last' (nur das letzte Vorkommen löschen) oder False (alle Vorkommen löschen). Wenn Sie beispielsweise alle Duplikate in der Executor-Serie entfernen und nur das letzte Vorkommen beibehalten möchten, können Sie den folgenden Code verwenden:

drop_duplicates() -Methode

drop_duplicates() -Methode in der Bibliothek können Sie mit pandas Duplikate basierend auf bestimmten Spalten oder einem vollständigen Satz von Spalten aus dem Dataframe entfernen. Diese Methode ist besonders nützlich, wenn die Daten doppelte Informationen enthalten und Sie den Dataframe von Duplikaten bereinigen möchten.

Die Syntax der drop_duplicates() -Methode lautet wie folgt:

dataframe.drop_duplicates(subset=None, keep='first', inplace=False)

  • subset - optionales Argument, mit dem Sie die Spalten angeben können, nach denen nach Duplikaten gesucht wird. Wenn nicht angegeben, wird die Überprüfung für alle Spalten durchgeführt.
  • keep - optionales Argument, mit dem Sie angeben können, welches der gefundenen Duplikate beibehalten werden soll. Mögliche Werte sind: 'first' (Standard) - das erste Vorkommen belassen, 'last' das letzte Vorkommen belassen, False - alle Duplikate löschen.
  • inplace - optionales Argument, mit dem Sie angeben können, ob der ursprüngliche Dataframe geändert werden soll. Wenn True festgelegt ist, werden die Änderungen direkt am ursprünglichen Dataframe vorgenommen, wenn False (Standard), wird ein neuer Dataframe ohne Duplikate zurückgegeben.

Beispiel für die Verwendung der Methode drop_duplicates():

# импорт библиотеки pandasimport pandas as pd# создание датафреймаdata = df = pd.DataFrame(data)# удаление дубликатов по всем столбцамdf_no_duplicates = df.drop_duplicates()print(df_no_duplicates)
 name age city0 John 25 New York2 Alice 30 Los Angeles3 Bob 35 Chicago

In diesem Beispiel wird die Methode drop_duplicates() löschte die Duplikate in allen Spalten und gab einen neuen Dataframe ohne Duplikate zurück.

Entfernen von Duplikaten nach Spalte

Sie können die Methode verwenden, um Duplikate für eine bestimmte Spalte in Pandas zu entfernen drop_duplicates(). Mit dieser Methode können Sie alle Zeilen suchen und löschen, in denen die Werte in der angegebenen Spalte vollständig übereinstimmen.

Im folgenden Beispielcode wird veranschaulicht, wie Duplikate in der Spalte "Name" aus dem DataFrame entfernt werden:

import pandas as pd# Создание DataFramedata = df = pd.DataFrame(data)# Удаление дубликатов по столбцу "Название"df = df.drop_duplicates(subset='Название')print(df)

Ergebnis der Codeausführung:

 Название Количество0 Продукт A 101 Продукт B 53 Продукт C 3

In diesem Beispiel wird die Methode drop_duplicates() findet alle Duplikate in der Spalte "Titel" und löscht sie, wobei nur eindeutige Werte übrig bleiben. Das Ergebnis ist ein neuer DataFrame, der keine Zeilen mit Duplikaten enthält.

Das Entfernen von Duplikaten in einer Spalte macht es daher einfach, die Daten von doppelten Werten zu löschen und sie für weitere Analysen strukturierter zu machen.

Entfernen von Duplikaten über mehrere Spalten hinweg

Es ist oft notwendig, Duplikate aus einem DataFrame über mehrere Spalten zu entfernen. In Pandas gibt es dafür eine Methode drop_duplicates(), mit dem Sie die gewünschten Spalten angeben können, um nach Duplikaten zu suchen.

In diesem Beispiel werden nur die Zeilen gelöscht, in denen die Werte in den Spalten enthalten sind col1 und col2 übereinstimmen.

Wenn Sie nur das erste Vorkommen jedes Wertesatzes beibehalten möchten, können Sie den Parameter verwenden keep='first':

df.drop_duplicates(subset=['col1', 'col2'], keep='first')

Parameter keep='last' lässt nur das letzte Vorkommen jedes Wertesatzes zu:

df.drop_duplicates(subset=['col1', 'col2'], keep='last')

Sie können auch alle Zeilen löschen, die Duplikate über mehrere Spalten hinweg enthalten, indem Sie den Parameter verwenden keep=False:

df.drop_duplicates(subset=['col1', 'col2'], keep=False)

Jetzt wissen Sie, wie Sie Duplikate über mehrere Spalten in Pandas entfernen können. Diese Methode ist sehr nützlich, wenn Sie mit großen Datasets arbeiten, in denen nur eindeutige Werte gespeichert werden müssen.