首页 > 解决方案 > Python Pandas:强制将 df 保存在 4 位数的 csv 数值中

问题描述

我有一个带有浮点数的数据框,我想用相同的位数保存它。这是我的数据框df

       1     0.917007  0.920562  0.922801  0.922745  0.917396  0.922445   
       2     0.914374  0.926690  0.914257  0.914607  0.914462  0.910307   
       3     0.919565  0.907405  0.916554  0.916463  0.919817  0.917184   
       4     0.912238  0.915469  0.900786  0.900752  0.912059  0.919894   
       5     0.906972  0.920995  0.918015  0.918200  0.908895  0.907092 

我正在保存它:

from pandas import ExcelWriter
writer = ExcelWriter('PythonExport.xlsx')
table.to_excel(writer,'aName',float_format='%11.4f')
writer.save()

但是当我打开文件时,我看到了这个:

在此处输入图像描述

如何强制为每个单元格保存的位数来获得这个?:

在此处输入图像描述

编辑:尝试使用以下内容另存为 csv 文件时发生同样的情况

table.to_csv('PythonExport.csv', sep=',',float_format='%11.4f')

注意:我使用的是 python3

标签: pythonpandas

解决方案


以下应该按照这里的描述工作

df.applymap('{:.4f}'.format).to_csv('PythonExport.csv')

要验证,请确保您.csv在文本编辑器而不是 Excel 中打开。


推荐阅读