如何修复熊猫 csv 阅读器上的"Error tokenizing data"?



我正在尝试用panda读取csv文件。

这个文件实际上只有一行,但每当我试图读取它时,它都会导致错误

第8行似乎出了问题,但我几乎找不到第8行,因为上面显然只有一行。

我确实喜欢:

with codecs.open("path_to_file", "rU", "Shift-JIS", "ignore") as file:
df = pd.read_csv(file, header=None, sep="t")
df

然后我得到:

ParserError: Error tokenizing data. C error: Expected 1 fields in line 8, saw 3

我不知道到底发生了什么,所以你的任何建议都将不胜感激。

我为此挣扎了将近半天,我用记事本打开csv,注意到separate是TAB而不是逗号,然后尝试了belo组合。

df = pd.read_csv('C:\myfile.csv',sep='t', lineterminator='r')

尝试df = pd.read_csv(file, header=None, error_bad_lines=False)

现有的答案不会在数据帧中包括这些额外的行。如果你希望你的数据帧和它的最宽点一样宽,你可以使用以下方法:

delimiter = ','
max_columns = max(open(path_name, 'r'), key = lambda x: x.count(delimiter)).count(delimiter)
df = pd.read_csv(path_name, header = None, skiprows = 1, names = list(range(0,max_columns)))

将skiprows=1设置为如果实际上有一个标头,则以后可以始终检索标头列名。您还可以识别填充的列数超过原始标头中列名数的行。

相关内容

最新更新