从csv [headers + Content]中删除重复行

时间:2017-09-22 08:04:44

标签: python pandas csv dataframe duplicates

我的数据集大小超过100mb,文件数量也很多。这些文件有超过20列,大约超过100万行。

数据的主要问题是:

  1. 标题正在重复 - 重复标题行
  2. 完整重复行,即该特定行中所有列的数据重复。
  3. 无需担心哪一列或多少列..只需保留第一次出现,然后删除其余列。

    我确实找到了太多的例子,但我要找的是输入和输出都需要是同一个文件。寻求帮助的唯一原因是,我希望编辑相同的文件。

    示例输入:这里 https://www.dropbox.com/s/sl7y5zm0ppqfjn6/sample_duplicate.csv?dl=0

    提前感谢帮助..

1 个答案:

答案 0 :(得分:1)

如果重复标题的数量已知并且不变,请跳过这些行:

csv = pd.read_csv('https://www.dropbox.com/s/sl7y5zm0ppqfjn6/sample_duplicate.csv?dl=1', skiprows=4)

或者,根据所有列删除所有重复项的加值,执行此操作:

csv = pd.read_csv('https://www.dropbox.com/s/sl7y5zm0ppqfjn6/sample_duplicate.csv?dl=1') csv = csv.drop_duplicates()

现在您在数据中仍然有一个标题行,只需跳过它: csv = csv.iloc[1:]

然后,您当然可以使用pandas.DataFrame.to_csv

覆盖输入文件