Die Pandas-Deduplizierungsmethode enthüllte: Eine schnelle und effiziente Datendeduplizierungsmethode erfordert spezifische Codebeispiele
Beim Prozess der Datenanalyse und -verarbeitung kommt es häufig zu Duplikaten in den Daten. Doppelte Daten können die Analyseergebnisse verfälschen, daher ist die Deduplizierung ein sehr wichtiger Schritt. Pandas, eine leistungsstarke Datenverarbeitungsbibliothek, bietet eine Vielzahl von Methoden zur Datendeduplizierung. In diesem Artikel werden einige häufig verwendete Deduplizierungsmethoden vorgestellt und spezifische Codebeispiele angehängt.
Die häufigste Situation ist die Deduplizierung basierend darauf, ob der Wert einer bestimmten Spalte wiederholt wird. In Pandas können Sie die Methode .duplicated()
verwenden, um zu bestimmen, ob die Werte einer Spalte dupliziert sind, und dann die Methode .drop_duplicates()
zum Entfernen verwenden doppelte Werte. .duplicated()
方法来判断某一列的值是否重复,然后使用.drop_duplicates()
方法来去除重复值。
例如,我们有一个包含了学生信息的DataFrame,其中有一个列是学生的学号,我们希望根据学号去除重复的行:
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(subset='学号', inplace=True) print(df)
运行结果:
学号 姓名 年龄 0 1001 张三 18 1 1002 李四 19 2 1003 王五 20 4 1004 赵六 21
这样就去除了学号重复的行,只保留了第一次出现的行。
有时候我们需要根据多个列的值是否重复来进行去重。在.drop_duplicates()
方法中可以通过subset
参数指定要根据哪些列进行去重。
例如,我们还是使用上面的学生信息的DataFrame,现在根据学号和姓名去除重复的行:
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(subset=['学号', '姓名'], inplace=True) print(df)
运行结果:
学号 姓名 年龄 0 1001 张三 18 1 1002 李四 19 2 1003 王五 20 4 1004 赵六 21
这样就根据学号和姓名同时去除了重复的行。
有时候我们希望根据整个DataFrame的所有列的值是否重复来进行去重。可以使用.duplicated()
方法的keep
参数设置为False
,则会标记所有重复的行。然后使用.drop_duplicates()
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(keep=False, inplace=True) print(df)
学号 姓名 年龄 0 1001 张三 18 4 1004 赵六 21
Manchmal müssen wir basierend darauf deduplizieren, ob die Werte mehrerer Spalten wiederholt werden. In der Methode .drop_duplicates()
können Sie mit dem Parameter subset
angeben, welche Spalten für die Deduplizierung verwendet werden sollen.
Zum Beispiel verwenden wir immer noch den obigen DataFrame der Studenteninformationen und entfernen jetzt doppelte Zeilen basierend auf der Studenten-ID und dem Namen:
rrreee🎜Laufergebnisse: 🎜rrreee🎜Auf diese Weise werden doppelte Zeilen basierend auf der Studenten-ID und dem Namen entfernt gleichzeitig. 🎜.duplicated()
verwenden, um den Parameter keep
auf False
zu setzen, und alle doppelten Zeilen werden markiert. Verwenden Sie dann die Methode .drop_duplicates()
, um diese doppelten Zeilen zu entfernen. 🎜🎜Zum Beispiel verwenden wir immer noch den obigen DataFrame der Studenteninformationen und entfernen jetzt doppelte Zeilen basierend auf allen Spalten des gesamten DataFrame: 🎜rrreee🎜Laufergebnisse: 🎜rrreee🎜Auf diese Weise werden alle doppelten Zeilen im gesamten DataFrame entfernt . 🎜🎜Zusammenfassung: 🎜🎜In diesem Artikel werden drei häufig verwendete Deduplizierungsmethoden in Pandas vorgestellt: Deduplizierung basierend auf einer einzelnen Spalte, Deduplizierung basierend auf mehreren Spalten und Deduplizierung basierend auf allen Spalten. Wählen Sie entsprechend den tatsächlichen Anforderungen die geeignete Methode aus, um doppelte Daten schnell und effizient zu entfernen. In praktischen Anwendungen können diese Methoden je nach spezifischen Daten und Anforderungen flexibel eingesetzt werden, um die Effizienz der Datenverarbeitung und -analyse zu verbessern. 🎜🎜Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass die Leser davon profitieren und Pandas besser für die Datendeduplizierung einsetzen können. 🎜Das obige ist der detaillierte Inhalt vonVorstellung der effizienten Datendeduplizierungsmethode in Pandas: Tipps zum schnellen Entfernen doppelter Daten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!