在Python Pandas 中刪除多列中的重複項
Pandas 中的drop_duplicates 函數提供了一種基於指定列函數重複行的便捷方法。但是,如果您不想刪除單一列中的重複項,而是刪除多個列的子集,該怎麼辦?
為了實現這一點,我們可以利用 drop_duplicates 的強大功能以及子集參數。透過指定要檢查重複項目的列列表,您可以確保消除與這些列的任意組合相符的行。
考慮以下範例:
A B C 0 foo 0 A 1 foo 1 A 2 foo 1 B 3 bar 1 A
我們的目標是刪除在 A 列和 C 列上相符的行。這將刪除第 0 行和第 1 行,因為它們在兩個欄位中具有相同的值。
使用drop_duplicates,我們可以使用以下程式碼來完成此操作:
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)
subset 參數指定用於重複偵測的欄位。 keep 參數設定為 False,可確保刪除所有重複行。
產生的 DataFrame 將如下所示:
A B C 0 foo 0 A 2 foo 1 B 3 bar 1 A
行 0 和 1 已被刪除,因為它們匹配A 和 C,根據這些列有效地唯一化 DataFrame。
以上是如何刪除 Pandas 中多列的重複行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!