从pandas读取csv,列值同时有引号和分隔符

2024-05-05 03:27:02 发布

您现在位置:Python中文网/ 问答频道 /正文

以下是csv文件的内容'测试.csv'我正在尝试通过pandas read_csv()来阅读它

"col1", "col2", "col3", "col4"
"v1", "v2", "v3", "v4"
"v21", "v22", "v23", "this, "creating, what to do? " problems"

这是我使用的命令-

^{pr2}$

但我得到了以下错误-

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

我希望第3行第4列的内容是“this”,“creating,what do do?”问题'

当列中可以包含引号和分隔符时,如何读取文件?在


Tags: 文件csvcreating内容pandasreadthisdo
1条回答
网友
1楼 · 发布于 2024-05-05 03:27:02

pandas不允许您保留格式错误的行,老实说,在您的示例中,我真的看不到忽略某些"字符而不是其他字符的方法。我认为使用'", "'作为分隔符,然后进行清理的直觉是最好的方法。如果你真的很担心一句话:

message = pd.read_csv('test.txt', sep='", "', names = ['col1','col2','col3','col4'], skiprows=1).apply(lambda x: x.str.strip('"'))

它还可以处理列名中的引号,并为您提供:

^{pr2}$

相关问题 更多 >