我在 Pandas 中有一些数据,我试图将它们保存为 32 位浮点数,但我总是得到 64 位浮点数。我最好的尝试是这样的:

df['store'] = pd.DataFrame(data).astype(float32)

但它不起作用..有什么想法吗?

最佳答案

使用 numpy.float32 :

In [320]:
import numpy as np
import pandas as pd
df = pd.DataFrame({'a':np.random.randn(10)})
df.info()

<class 'pandas.core.frame.DataFrame'>
Int64Index: 10 entries, 0 to 9
Data columns (total 1 columns):
a    10 non-null float64
dtypes: float64(1)
memory usage: 160.0 bytes

In [323]:
df['a'].astype(np.float32)

Out[323]:
0    0.966618
1   -0.331942
2    0.906349
3   -0.089582
4   -0.722004
5    0.668103
6    0.230314
7   -1.707631
8    1.806862
9    1.783765
Name: a, dtype: float32

可以看到dtype现在是float32

关于python - 将 Pandas 数据帧保存为 32 位浮点数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31427971/

10-12 20:10