字符串中的read_csv()和EOF字符导致解析问题

Aus*_*vis 0 python

我正在尝试从一个zip文件中读取50个csv文件,但一直在获取

CParserError:标记数据时出错。C错误:从166行开始的字符串内的EOF我知道读取数据中的特定字符串有错误,可以手动修复,但是不想手动提取所有csv文件来修复每个文件。

with zipfile.ZipFile('C:\Users\Austen\Anaconda\cs109_final\CA34.zip') as zf:
   for name in zf.namelist():
      container[name] = pd.read_csv(zf.open(name))
Run Code Online (Sandbox Code Playgroud)

我发现的问题是,只有一个。在每个csv文件的末尾。我将如何忽略呢?

参考来自:

https://github.com/pydata/pandas/issues/5500

尝试添加

    container[name] = pd.read_csv(zf.open(name),skipfooter=4) 
Run Code Online (Sandbox Code Playgroud)

但是我得到“数据意外结束”

Sel*_*lah 5

将选项添加到read_csv可以解决此问题吗?我有一个类似的问题,并通过添加选项quoting = csv.QUOTE_NONE进行了修复。

例如:

df = pd.read_csv(csvfile, header = None, delimiter="\t", quoting=csv.QUOTE_NONE, encoding='utf-8')
Run Code Online (Sandbox Code Playgroud)

讨论中的第二条评论讨论了为什么:https//github.com/pydata/pandas/issues/5500