You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pandas to_csv用|分隔存CSV,read_csv按|读取报错求助

解决DataFrame保存CSV时分隔符不生效的问题

你在保存testeEstadosSeparados DataFrame时,明明指定了sep="|"作为分隔符,但实际生成的CSV文件还是用逗号分隔,导致读取时只有设sep=","才能正常打开,用sep="|"就触发ParserError错误(提示第80行预期1个字段,实际看到2个)。

错误原因

你的保存代码括号位置写错了,把index=False、sep="|"这些to_csv的参数,误放到了format()的括号里,导致这些参数根本没传给to_csv方法,to_csv只能用默认的逗号分隔符来保存文件。

原错误代码的问题点:

testeEstadosSeparados.to_csv("/home/ec2-user/SageMaker/Bases/infraEscola-UF-semDuplicacoes/planosDeAcao_Escolas_{}.csv".format(pegaNomeDoCampo_Contagem(paths[0]), index = False, sep = "|", encoding="utf-8"))

这里format()的括号把index等参数都包含进去了,相当于给format()传了多余参数,而to_csv完全没收到sep等设置。

修正后的代码

把format()的括号只包裹文件名里的占位符部分,to_csv的参数单独放在外面:

testeEstadosSeparados.to_csv(
    "/home/ec2-user/SageMaker/Bases/infraEscola-UF-semDuplicacoes/planosDeAcao_Escolas_{}.csv".format(pegaNomeDoCampo_Contagem(paths[0])),
    index=False,
    sep="|",
    encoding="utf-8"
)

已生成文件的处理

如果已经生成了逗号分隔的CSV文件,不想重新保存的话,读取时直接用sep=","即可;如果必须使用|分隔的文件,用上面修正后的代码重新保存一次即可。

内容的提问来源于stack exchange,提问作者Vinicius Oliveira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 05:05:20