温馨提示:本文翻译自stackoverflow.com,查看原文请点击:pandas - Conserving upto 16 decimal places in Python
pandas python text decimal

pandas - 在Python中最多保留16位小数

发布于 2020-03-27 11:52:02

我在一个文本文件中有一个数值表,其精度为16位十进制数,正在读取到Jupyter Notebook中并将其转换为Pandas DataFrame。如何将小数模块与 pandas 一起使用以保留文本文件的精度?还是还有其他更好的方法?当前,它仅显示最多5-6个小数位。谢谢!

码:

from pathlib import Path
folder = Path("C:/This/is/the/path")
file = folder1/"thisfile.txt"
df = loadtxt(file1)
df = pd.DataFrame(df)

输入是一个文本文件:

                2                    2  -14914.622755795561     
                3                    2  -10563.365160496842     
                4                    2  -6927.2062998872152     
                5                    2  -3886.5429891705344     
                6                    2  -1370.9348975732908     

输出在 pandas 中看起来像这样:

0   2.0 2.0 -14914.622756
1   3.0 2.0 -10563.365160
2   4.0 2.0 -6927.206300
3   5.0 2.0 -3886.542989
4   6.0 2.0 -1370.934898

查看更多

查看更多

提问者
ak-dev
被浏览
116
Shiva Kishore 2019-07-03 23:29

Pandas不会降低数据的精度,但是会在显示时四舍五入。

要获得16位十进制精度,请将float的显示格式设置为16位。

pd.options.display.float_format = '{:,.16f}'.format

导入 pandas 后,请使用以上配置。

快乐编码:)