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个赞
一些重复的内容仍然存在并且没有删除。我认为这种方法适用于完全相同的副本;如果是这样的话,那这不是我要找的。我想应用记录链接来识别引用同一实体的记录,然后可以将其删除。
添加回答
举报