首页 > 解决方案 > Pandas.read_csv() 忽略包含 FEWER 字段的坏行/行。文本文件

问题描述

我正在尝试阅读这个巨大的文本文件:https ://www.dropbox.com/s/3ikikw8bxde6y1i/TCAD_SPECIAL%20EXPORT_2019_20200409.zip?dl= 0(如果您下载 zip,该文件是 Special_ARB.txt(对于我的问题imo)。

我正在运行此代码(添加error_bad_lines=False)以忽略具有超出预期字段的行,效果很好:

pd.read_csv(r'~/Special_ARB.txt', sep="|", 
            header=None,encoding='cp1252',error_bad_lines=False)

问题是read.csv()当一行只有一个字段时崩溃。出现以下错误:

指定的列太多:预期为 77,但找到 1

有没有办法告诉 python/pandas 忽略这个错误?它没有让我知道它是哪条线。有超过一百万行,所以我不能自己找到它。

谢谢,

标签: pythonpandastextread.csv

解决方案


这应该适用于内存数据集,您可以将分块用于大型数据集的解决方案:https ://stackoverflow.com/a/59331754/9379924


推荐阅读