gpt4 book ai didi

python - Pandas 读取 csv 并在引用中转义引用

转载 作者:行者123 更新时间:2023-12-01 01:46:23 25 4
gpt4 key购买 nike

设置

任务是使用 Pandas 读取此 csv(即 pd.read_csv(filename)):

title,description
Jeans,"blue"
Jeans,"2\" seam"
Jeans,"2\" seam, blue"

尝试此操作的代码

import os
import pandas as pd

with open("/tmp/test.csv", "w") as f:
f.write('''title,description
Jeans,"blue"
Jeans,"2\" seam"
Jeans,"2\" seam, blue"
''')

pd.read_csv("/tmp/test.csv")

问题

预期输出:

    title   description
0 Jeans blue
1 Jeans 2" seam
2 Jeans 2" seam, blue

但实际上它可以:

  • 阅读第一行没问题
  • 错误地读取了第二行,但没有抛出错误
  • 无法读取第三行并出现错误

读取到第二行的结果:

    title   description
0 Jeans blue
1 Jeans 2 seam"

读取到第三行时出错:

ParserError: Error tokenizing data. C error: Expected 4 fields in line 3, saw 5

这似乎是一个常见问题。 Pandas read_csv 中是否有可以处理此问题的配置?

最佳答案

默认情况下,the escapechar is None 。要将反斜杠指定为用于转义分隔符的单字符字符串(例如双引号),请使用 escapechar='\\':

In [23]: pd.read_csv('data', escapechar='\\')
Out[23]:
title description
0 Jeans blue
1 Jeans 2" seam
2 Jeans 2" seam, blue

关于python - Pandas 读取 csv 并在引用中转义引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51289689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com