read_csv:用单引号引起来的字段?

时间:2019-01-16 15:47:18

标签: python pandas dataframe delimiter

我正在尝试使用Pandas的read_csv读取CSV文件。我正在读取的文件包含以下内容:

  

“鲍勃”,“汽车”,“鲍勃的车”

我的问题是所有字段都用单引号引起来(据我了解,这是一个文本限定符),但是某些字段也包含单引号。这是我正在使用的代码:

import pandas as pd
data = pd.read_csv(r"C:\Users\USERNAME\Documents\testfile.txt", delimiter=",", quotechar="'", engine='python')

我可以将定界符设置为单引号逗号单引号,但在每行的开头和结尾仍然会留下单引号。

对此的重复: 他们的答案将解决我的问题,因为该字段中使用了单引号,但这使它有可能出现另一个问题。如果在这样的字段中出现逗号怎么办:

  

“鲍勃”,“汽车”,“鲍勃的汽车”

我希望文本限定符之间可以包含任何内容。要求太多吗?

解决方案 我自己解决了该问题,方法是将您标记为我的复制和调整项作为解决方案的一部分。我将分隔符更改为单引号逗号单引号,然后在开头和结尾处删除了其余的单引号。我还必须将所有值都转换为字符串以使其起作用。这是我的工作代码:

data = pd.read_csv(r'C:\Users\lt060810\Documents\testfile.txt', delimiter="','", quotechar="'", dtype={2:'str'}, engine='python')
data = data.apply(lambda x: x.astype(str).str.strip("'"))
data.columns = data.columns.str.strip("'")

0 个答案:

没有答案