2 回答

TA貢獻1785條經驗 獲得超8個贊
Pandas
提供了一種非常簡單的方法來實現pandas.DataFrame.drop_duplicates。
給定以下文件(data.csv
)存儲在當前工作目錄中。
name,age,salary
John Doe,25,50000
Jayne Doe,20,80000
Tim Smith,40,100000
John Doe,25,50000
Louise Jones,25,50000
以下腳本可用于刪除重復記錄,將處理后的數據寫入當前工作目錄 ( processed_data.csv) 中的 csv 文件。
import pandas as pd
df = pd.read_csv("data.csv")
df = df.drop_duplicates()
df.to_csv("processed_data.csv", index=False)
此示例中的結果輸出如下所示:
name,age,salary
John Doe,25,50000
Jayne Doe,20,80000
Tim Smith,40,100000
Louise Jones,25,50000
pandas.DataFrame.drop_duplicates還允許從特定列中刪除重復屬性(而不僅僅是整行的重復屬性),列名稱是使用參數指定的subset
。
例如
import pandas as pd
df = pd.read_csv("data.csv")
df = df.drop_duplicates(subset=["age"])
df.to_csv("processed_data.csv", index=False)
將從列中刪除所有重復值age,僅保留包含后續記錄字段中重復值的第一條記錄age。
在本例中,輸出將是:
name,age,salary
John Doe,25,50000
Jayne Doe,20,80000
Tim Smith,40,100000

TA貢獻1784條經驗 獲得超7個贊
一些重復的內容仍然存在并且沒有刪除。我認為這種方法適用于完全相同的副本;如果是這樣的話,那這不是我要找的。我想應用記錄鏈接來識別引用同一實體的記錄,然后可以將其刪除。
添加回答
舉報