首頁 >後端開發 >Python教學 >如何有效刪除 Pandas 中特定列的重複行?

如何有效刪除 Pandas 中特定列的重複行?

DDD
DDD原創
2024-12-12 19:39:16385瀏覽

How Can I Efficiently Remove Duplicate Rows Across Specific Columns in Pandas?

在Python Pandas 中刪除多列中的重複行

pandas drop_duplicates 函數可以消除DataFramelicates 中的重複行,DataFrame 是清除資料行的寶貴工具。若要擴充此功能,可以指定要檢查唯一性的欄位。

例如,考慮以下 DataFrame:

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

假設您要刪除列中具有相同值的行「A」和「C」。在這種情況下,第 0 行和第 1 行將被消除。

以前,此任務需要手動過濾或複雜的操作。然而,隨著 pandas 增強的 drop_duplicates 功能,現在變得輕而易舉。 keep 參數的引入可讓您控制如何處理重複項。

要刪除與特定欄位相符的行,請使用subset 參數。將keep 設為False,您可以指示pandas 消除所有重複的行:

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)

輸出:

    A   B   C
2   foo 1   B
3   bar 1   A

如您所見,第0 行和第1 行已成功刪除,只留下基於列“A”和“C”中的值唯一的行。

以上是如何有效刪除 Pandas 中特定列的重複行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn