将对象转换为浮点值会损失太多精度-panda



我正试图使用pandas绘制DataFrame,但它不起作用(有关详细信息,请参阅此类似的线程)。我认为部分问题可能是我的DataFrame似乎是由objects:组成的

>>> df.dtypes
Field          object
Moment         object
Temperature    object

然而,如果我要将所有值转换为类型float,我会损失很多精度。Moment列中的所有值的形式为-132.2036E-06,用df1 = df.astype(float)转换为float会将其更改为-0.000132

有人知道我如何保持精度吗?

您可以这样做来更改显示的精度

In [1]: df = DataFrame(np.random.randn(5,2))
In [2]: df
Out[2]: 
          0         1
0  0.943371  0.171686
1  1.508525  0.005589
2 -0.764565  0.259490
3 -1.059662 -0.837602
4  0.561804 -0.592487
[5 rows x 2 columns]
In [3]: pd.set_option('display.precision',12)
In [4]: df
Out[4]: 
               0              1
0  0.94337126946  0.17168604324
1  1.50852519105  0.00558907755
2 -0.76456509501  0.25948965731
3 -1.05966206139 -0.83760201886
4  0.56180449801 -0.59248656304
[5 rows x 2 columns]

最新更新