因此,作为CSV文件的一部分,我正在尝试使用pd.read_csv()转换为DataFrame,我一直收到此错误:
pandas.errors.ParserError: Error tokenizing data. C error: Expected 3 fields in line 2, saw 4
文件的第一行如下:
事情是,在原始的二进制内容中,第二行的“yada”没有转义字符...
我应该在read_csv()方法中包含哪些参数,以便通过假设整个
对该行进行正确的解析“aa bb”yada“cc dd,ee”
是一栏?
答案 0 :(得分:2)
如果引用问题仅出现在最后一列中,那么您可以按照以下方式按下数据,然后再将其作为数据帧加载:
import pandas as pd
import csv
data = []
with open('input.csv', newline='') as f_input:
for row in csv.reader(f_input, quotechar='\x01'):
data.append([v.strip('"') for v in row[:2] + [','.join(row[2:])]])
df = pd.DataFrame(data)
print(df)
对于给出的数据,这将给你:
0 1 2
0 yada yada yada
1 yada yada aa bb "yada" cc dd, ee