将 pandas 数据框导出到 csv 时如何防止科学记数法?

问题描述 投票:0回答:1

我用pandas读取和修改excel文件,最后将它们导出为csv。 一列可以包含各种文本,有时还可以包含数字字符串,例如“0123456789”,请注意前导零。前导零似乎会导致 Excel 自动格式化这些单元格并以科学格式显示它们。 我不想在最后导出 csv 时更改该单元格值,但默认情况下它总是将其设置为科学格式,即使它在 excel 中不是该格式,因为它的格式为“文本”或在处有撇号开头(Excel 文件中不显示)。

如果我在 python 中手动在开头放置撇号,它不会将值更改为科学格式,但是撇号在 csv 中可见,因为 csv 中没有格式,而且我也可以在该列中包含非数字值,如下所示好吧,在开头加一个撇号并不是在所有情况下都有意义。

如何读取 Excel 并将其导出为 csv,而不以科学格式显示这些数字字符串,并保持它们原样,而无需随后在 csv 中手动执行任何操作?

python excel pandas csv
1个回答
0
投票

根据 pandas 文档 to_csv 不包含任何列格式,但是您可以在读取原始 Excel 时定义 dtype。如果您分享您用来读取 Excel 的代码,我可以提供进一步的帮助。因此,您可以去查看有关 dtype 参数的文档。您可以从一开始就将列格式化为字符串,并阻止 pandas 算法推断该列的格式。让我知道它是否有效 https://pandas.pydata.org/docs/reference/api/pandas.read_excel.html

© www.soinside.com 2019 - 2024. All rights reserved.