在 pandas.read_csv 上转义双引号

Escape double quatation on pandas.read_csv

当我读取包含双引号的 CSV 文件时,CParserError 发生。如何避免此错误并正确加载 CSV 文件?

请假设我无法编辑 CSV 文件,因为实际上有很多类似的文件要加载。

my.csv

abc,",def

csv_loader.py

import pandas as pd
pd.read_csv("my.csv")

错误信息

CParserError: Error tokenizing data. C error: EOF inside string starting at line 0

解决方案是将 quotechar 设置为与分隔符相同,请参阅 github issue 5500:

import pandas as pd
from pandas.compat import StringIO

temp=u"""a,b,c
abc,",def
"""
#after testing replace StringIO(temp) to filename
df = pd.read_csv(StringIO(temp), quotechar=',')
print (df)

     a  b    c
0  abc  "  def