繁体   English   中英

如何修复熊猫 csv 阅读器上的“错误标记数据”?

[英]How can I fix "Error tokenizing data" on pandas csv reader?

我正在尝试使用 Pandas 读取 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 并注意到分隔符是 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,以后您始终可以检索标题列名称。 您还可以识别填充的列数多于原始标题中列名数的行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM