我想读取一个非常大的csv(无法在excel中打开并轻松编辑),但是在第100,000行左右的某个地方,有一行带有一个额外的列,导致程序崩溃。该行是错误的,因此我需要一种方法来忽略它是多余的列这一事实。大约有50列,因此对标题进行硬编码和使用名称或usecols是不可取的。我可能还会在其他csv中遇到此问题,并希望有一个通用的解决方案。不幸的是,我在read_csv中找不到任何东西。代码很简单:
def loadCSV(filePath):
dataframe = pd.read_csv(filePath, index_col=False, encoding='iso-8859-1', nrows=1000)
datakeys = dataframe.keys();
return dataframe, datakeys
warn_bad_lines=True
可能还有助于诊断有问题的行。