python - Pandas read_csv EOF 位于从行开始的字符串内

标签 python pandas eof

我遇到了 pandas read_csv 的问题。我有一个文件,其中包含 "作为字段值。实际上,情况不应如此,但我对文件生成没有影响,因此我必须找到解决方法。

pandas.errors.ParserError: Error tokenizing data. C error: EOF inside string starting at line 15345

我在 Git ( link here ) 上发现了一个关于此问题的问题报告,其中他们建议使用用于“sep”参数的分隔符,也用于“quotechar”。在这种情况下,文件结构会变得困惑。

我做的另一件事是为此添加一个异常(exception),它将运行其余文件的代码,但对于该特定类型的文件,我将继续遇到该问题。

我用来读取 CSV 文件的命令:

df_new = pd.read_csv(file_path_name, sep=";", error_bad_lines=False)

有任何解决方法吗(例如忽略此问题的行)?我猜想的一种方法是使用 csv 库删除该行(或用其他内容替换 "),但我想保持简单并在 pandas 中尽可能多地执行操作。

Python版本:3.6.2

Pandas 版本:0.21.0

谢谢您并致以诚挚的问候

最佳答案

只想指出@user8505495 的建议有效(再次感谢您)。

基本上只是将参数 quoting=3 添加到 read_csv 中。在 to_csv 中使用相同的参数会导致错误(缺少转义字符)。一种选择是设置 escapechar 参数,或者不使用 quoting 参数。

关于python - Pandas read_csv EOF 位于从行开始的字符串内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48023061/

相关文章:

python - 具有非常大的 HDF5 文件的 Tensorflow-IO 数据集输入管道

python : error handling Ordered dict with unicode data

python - 在 XML 文件中查找标签

python - 更改日期列中的年份

c - 以下代码中的 EOF 是什么?

python - 如何找出文件是否位于 `eof` ?

c - 如何在 Windows 中使用 Ctrl+D 结束一个 c 程序?

python - 生成器:以固定偏移量预处理事件

python - 如何根据多个标准对 Pandas DataFrame 进行排序?

python - pandas dataframe - 过滤会产生意外错误 'unorderable types'