python 设置文件中数据的读取精度

Posted Yang-hao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 设置文件中数据的读取精度相关的知识,希望对你有一定的参考价值。

在使用的是pandas读取文件内的数据时,通常会默认保持7精度左右的数据(具体有多少进度没有在意)

而有时候我们需要精度比较高的数据,在这里就需要进行处理了,

一般需要在使用pandas读取文件的那一行之后,添加一行代码:

1 with pd.option_context(display.precision, 12)

就行了,完整例子如下

point = pd.read_csv(point.csv)
with pd.option_context(display.precision, 12):
    # print(point)
    B0 = np.double(point.loc[0, [x]])
    L0 = np.double(point.loc[0, [y]])
    #print(B0, L0)
    for i in range(len(point)):
        if i % 10 == 0:
            waypoint = point.loc[i, ["x", "y", "heading"]].values.astype(float)
            lat = np.double(waypoint[[0]])
            lon = np.double(waypoint[[1]])
            x, y = transformation(lat, lon, B0, L0)
            line = "%s,%s,%s" % (x, y, waypoint[[2]][0])
            with open("test.csv", a+) as f:
                f.write(line + 
)

以上是关于python 设置文件中数据的读取精度的主要内容,如果未能解决你的问题,请参考以下文章

将双精度值存储在二进制文件中并读取它

python 读取多个csv文件中某一列,并生成一个新csv文件

从二进制文件中读取并转换为双精度?

将工作代码从双精度转换为四精度:如何从输入文件中读取 FORTRAN 中的四精度数字

如何从 python 中的嵌套 YAML 文件中读取数据?

在不损失精度的情况下将双精度从 C++ 转移到 python