首页 > 解决方案 > Pandas 在 CSV 中删除重复项

问题描述

我有两个 CSV。它们包含相同的列和数据。一个 CSV 添加了其他记录。

我想要 1 个包含新的附加记录的 CSV,并删除所有重复的记录。

我有:

import pandas as pd

rows = pd.read_csv('/home/test/Documents/rows.csv')
rowsadded = pd.read_csv('/home/test/Documents/rowsadded.csv')

joined = rows.append(rowsadded)
reduce = joined.drop_duplicates(subset=None, keep=False, inplace=False)
reduce.to_csv('/home/test/Documents/results.csv')

当我设置 Keep = False 时,所有记录都被删除,只保留列名。

在我附加 CSV 后,有人对删除重复记录有什么建议吗?

更新- 更改代码如下,将新行从 'rowsadded' CSV 附加到 'rows':

reduce = joined.drop_duplicates(keep=False, inplace=True)

我做错了什么 - 我想删除重复项,只保留新行并将该信息写入新的 CSV?

标签: python-3.xpandascsv

解决方案


一口气全部尝试

pd.concat([df1,df2]).drop_duplicates(keep=False)

推荐阅读