Pandas.read_csv“数据意外结束”错误

时间:2018-08-30 21:34:17

标签: python pandas

我正在尝试使用pd.read_csv()读取数据集,但出现错误。 Excel可以很好地打开它。

reviews = pd.read_csv('br.csv')给出错误ParserError:标记数据错误。 C错误:字符串内的EOF从312074行开始

reviews = pd.read_csv('br.csv', engine='python', encoding='utf-8')返回ParserError:数据意外结束

该如何解决?

编辑: 这是数据集-https://www.kaggle.com/gnanesh/goodreads-book-reviews

2 个答案:

答案 0 :(得分:6)

对我来说,添加此修复程序即可:

error_bad_lines=False

它只是跳过最后一行。 因此,而不是

reviews = pd.read_csv('br.csv', engine='python', encoding='utf-8')

reviews = pd.read_csv('br.csv', engine='python', encoding='utf-8', error_bad_lines=False)

答案 1 :(得分:1)

就我而言,我不想跳过行,因为需要执行我的任务才能计算csv文件中的数据记录数。 对我有效的解决方案是使用csv库中的Quote_None。 我通过在一些我不记得的网站上阅读来尝试这种方法,但是它可以正常工作。

为描述我的情况,以前我有一个错误:EOF .... 然后我尝试使用参数engine ='python'。但这为下一步使用数据框引入了另一个错误。 然后我尝试引用quots = csv.Quote_None,现在可以了。 希望对您有帮助

import csv    
read_file = read_csv(full_path, delimiter='~', encoding='utf-16 BE', header=0, quoting=csv.QUOTE_NONE)