【发布时间】:2015-08-19 11:04:49
【问题描述】:
我有一个固定宽度的大型文件以 10000 行的形式读入 pandas。除了从数据中删除重复项之外,这对所有事情都非常有用,因为重复项显然可以位于不同的块中。正在分块读取文件,因为它太大而无法全部放入内存中。
我对文件进行重复数据删除的第一次尝试是只引入对其进行重复数据删除所需的两列,并制作一个不读取的行列表。仅读取这两列(大约 500 列)很容易适应内存,我能够使用 id 列来查找重复项,并使用资格列来决定保留具有相同 id 的两列或三列中的哪一列。然后我使用 read_fwf() 命令的 skiprows 标志来跳过这些行。
我遇到的问题是 Pandas 固定宽度文件阅读器不能同时使用 skiprows = [list] 和 iterator = True。
那么,如何对正在分块处理的文件进行重复数据删除?
【问题讨论】: