编程语言
首页 > 编程语言> > python – 如何记录熊猫跳过的坏行

python – 如何记录熊猫跳过的坏行

作者:互联网

我正在阅读带有pandas的CSV文件

error_bad_lines=False

遇到错误的线路时会打印警告.但是,我想保留所有不良行号的记录,以便输入另一个程序.这样做有简单的方法吗?

我想过用一个迭代文件

chunksize=1

并捕获应该为遇到的每条坏线抛出的CParserError.当我这样做虽然没有为坏线引发CParserError,所以我无法捕捉到它们.

解决方法:

警告打印在标准错误通道中.您可以通过重定向sys.stderr输出将它们捕获到文件中.

import sys
import pandas as pd

with open('bad_lines.txt', 'w') as fp:
    sys.stderr = fp
    pd.read_csv('my_data.csv', error_bad_lines=False)

标签:data-cleaning,python,pandas
来源: https://codeday.me/bug/20191002/1844440.html