我的值当前在数组中显示为1.00+e09
(类型为float64)。我希望他们改为显示1000000000
。这可能吗?将numpy数组值转换为整数
0
A
回答
1
做一个样品阵列
In [206]: x=np.array([1e9, 2e10, 1e6])
In [207]: x
Out[207]: array([ 1.00000000e+09, 2.00000000e+10, 1.00000000e+06])
我们可以转换为整数 - 除了通知,最大的一个太大的默认INT32
In [208]: x.astype(int)
Out[208]: array([ 1000000000, -2147483648, 1000000])
In [212]: x.astype(np.int64)
Out[212]: array([ 1000000000, 20000000000, 1000000], dtype=int64)
写入与默认格式(浮点)的CSV(不管阵列D型的,这是默认格式):
In [213]: np.savetxt('text.txt',x)
In [214]: cat text.txt
1.000000000000000000e+09
2.000000000000000000e+10
1.000000000000000000e+06
我们可以指定格式:
In [215]: np.savetxt('text.txt',x, fmt='%d')
In [216]: cat text.txt
1000000000
20000000000
1000000
潜在的有3个问题:
- 整数v浮在阵列本身,它的
dtype
- 阵列 的显示或打印
- 将数组写入csv文件
+0
谢谢,这有助于加载。 :) – Student1001
0
这是一个打印选项,请参阅文档:printing options。简单地说:你需要使用抑制选项打印时:
np.set_printoptions(suppress=True) # for small floating point.
np.set_printoptions(suppress=True, formatter={'all':lambda x: str(x)})
相关问题
- 1. numpy将分类字符串数组转换为整数数组
- 2. 将数据帧转换为numpy数组?
- 3. Python将numpy数组转换为元组
- 4. 将numpy数组转换为元组
- 5. 将整数转换为数组数组
- 6. 将numpy数组转换为numpy记录数组
- 7. 将RGBA numpy数组转换为二进制2d numpy数组
- 8. 将2D numpy数组列表转换为一个3D numpy数组?
- 9. 将NumPy数组转换为cvMat cv2
- 10. 如何将itertools.chain转换为numpy数组?
- 11. 将列表转换为numpy数组
- 12. 将文本转换为numpy数组
- 13. 将Numpy数组转换为图像
- 14. 将numpy数组转换为图像
- 15. 如何将CvMat转换为Numpy数组?
- 16. 将int列表转换为numpy数组
- 17. 将numpy数组转换为cython指针
- 18. 将数组从MATLAB转换为numpy
- 19. pyqt:将numpy数组转换为QImage
- 20. 如何将TFRecords转换为numpy数组?
- 21. 将numpy数组转换为PySide QPixmap
- 22. 将numpy矩阵转换为python数组
- 23. 将vtkPoints转换为numpy数组?
- 24. 将1D数组转换为numpy矩阵
- 25. 将整数数组转换为数字
- 26. 将整数转换为数组数字
- 27. 将numpy数组从数值转换为索引
- 28. 我如何使用numpy将数组转换为数组数组
- 29. 将字符数组转换为整数
- 30. 将字符数组转换为整数
您是否想要使用'float64',或者您希望数据实际上只是整数? – Eric
我希望他们是整数。我试图在计算后将值写回csv文件,然后将csv文件转换为excel文件。现在,我的excel文件中的值显示为1.00 + e09表单,我无法在excel上使用它。 – Student1001