我的值當前在數組中顯示爲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. 將2D numpy數組列表轉換爲一個3D numpy數組?
- 7. 將numpy數組轉換爲numpy記錄數組
- 8. 將RGBA numpy數組轉換爲二進制2d numpy數組
- 9. 將numpy矩陣轉換爲python數組
- 10. 將NumPy數組轉換爲cvMat cv2
- 11. 將vtkPoints轉換爲numpy數組?
- 12. 將1D數組轉換爲numpy矩陣
- 13. 如何將itertools.chain轉換爲numpy數組?
- 14. 將列表轉換爲numpy數組
- 15. 將numpy數組轉換爲圖像
- 16. 如何將CvMat轉換爲Numpy數組?
- 17. 將數組從MATLAB轉換爲numpy
- 18. 如何將TFRecords轉換爲numpy數組?
- 19. 將int列表轉換爲numpy數組
- 20. pyqt:將numpy數組轉換爲QImage
- 21. 將numpy數組轉換爲PySide QPixmap
- 22. 將numpy數組轉換爲cython指針
- 23. 將文本轉換爲numpy數組
- 24. 將Numpy數組轉換爲圖像
- 25. 將整數數組轉換爲數字
- 26. 將整數轉換爲數組數字
- 27. 將numpy數組從數值轉換爲索引
- 28. 我如何使用numpy將數組轉換爲數組數組
- 29. 將字符數組轉換爲整數
- 30. 將字符數組轉換爲整數
您是否想要使用'float64',或者您希望數據實際上只是整數? – Eric
我希望他們是整數。我試圖在計算後將值寫回csv文件,然後將csv文件轉換爲excel文件。現在,我的excel文件中的值顯示爲1.00 + e09表單,我無法在excel上使用它。 – Student1001