由df.to_csv写入的文件不能由pd.read_csv读取

2024-03-29 14:36:59 发布

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

我有一个从json读取、处理并保存到csv的数据帧。 df的形状和df.head()、tail看起来都很好。 我向csv写入数据,然后读取数据并得到一个错误-

df = get_json(params)        
df.to_csv(f'fname.csv')
testdf = pd.read_csv(f'fname.csv')

ParserError: Error tokenizing data. C error: Buffer overflow caught - possible malformed input file.

我是否应该做一些“仔细的写作”


Tags: csvto数据jsondfget错误params
2条回答

根据我在这个问题上的经验,默认引擎出现了一些问题,这样做有助于我:

df.read_csv('input.csv', engine = 'python')

有时,pandas用作行终止符的数据中有一些回车'\r',就好像它是'\n'。因此,指定lineterminator='\n'可以解决您的问题:

testdf = pd.read_csv(f'fname.csv', lineterminator='\n')

您还可以查看您的数据,以查看错误发生的确切位置,请参阅以下内容:

Error in Reading a csv file in pandas[CParserError: Error tokenizing data. C error: Buffer overflow caught - possible malformed input file.]

相关问题 更多 >