python - 使用引号和逗号解析 csv

标签 python pandas csv escaping double-quotes

我正在尝试读取 Pandas 中的 csv(通过 read_csv 函数),其中第二个属性 text 包含用双引号封装的字符串。一些示例在字符串内包含更多引号,这些引号被转义,例如“他说“好吧,我会”,但我对此表示怀疑”

e.g. 
  id, text
   0, "random text"
   1, "He said \"Okay, I will\" but I doubt it"

每当我运行read_csv函数时,我都会收到错误CParserError:标记数据时出错。 C 错误:第 1 行应有 2 个字段,但看到了 3。这是因为子字符串 \"Okay, I will\" 中的逗号被视为分隔符,而实际上它不是分隔符。

我该如何解决这个问题?


编辑

我在另一个 post 上找到了解决方案。我要做的就是向 read_csv 添加 2 个属性: pd.read_csv('dataset.csv', escapechar='\\',encoding='utf-8') 。现在工作正常。

最佳答案

您显示的文件不正确。带引号的字段内的引号应该加倍。并且分隔符后面不应出现空格。应该是:

id,text
0,"random text"
1,"He said ""Okay, I will"" but I doubt it"

关于python - 使用引号和逗号解析 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55425515/

相关文章:

python - 如何修复 : "Testing pyext configuration : Could not build python extensions"

python - Pandas - 识别每列唯一条目的百分比

python - 在 Pandas 中为组切片设置值的最快方法

python - dataframe.groupby 中排序的频率和百分比

python - 使用来自具有相同名称但不同扩展名的不同文件的数据来获取行号

python - 在模板中显示我的报价项目的总价

python - 如何过滤 pandas 数据框中特定列的第一和第三四分位数内的行?

python - 通过 Python 导出带有标题和日期格式的 CSV

UNIX 中的 CSV 文件操作

Azure NSG - 从输入 csv 中筛选某些 IP