在沒有科學記數法和給定精度的情況下漂亮地打印NumPy 數組
打印浮點數的NumPy 數組時,通常會產生幾個小數並且使用科學格式,使其難以閱讀,尤其是對於低維數組。由於 NumPy 數組需要作為字串列印,這就提出了尋找解決方案的問題。
使用 numpy.set_printoptions 允許您為輸出設定所需的精確度。透過設定此選項,您可以控制顯示的小數位數。
為了進一步提高可讀性,您可以使用抑制選項來停用科學記數法。這可確保小數字以標準表示法顯示。
import numpy as np x = np.random.random(10) print(x) # [ 0.07837821 0.48002108 0.41274116 0.82993414 0.77610352 0.1023732 # 0.51303098 0.4617183 0.33487207 0.71162095] np.set_printoptions(precision=3) print(x) # [ 0.078 0.48 0.413 0.83 0.776 0.102 0.513 0.462 0.335 0.712]
y = np.array([1.5e-10, 1.5, 1500]) print(y) # [ 1.500e-10 1.500e+00 1.500e+03] np.set_printoptions(suppress=True) print(y) # [ 0. 1.5 1500. ]
如果您使用的是 NumPy 版本 1.15.0 或更高版本,您可以利用 numpy.printoptions 上下文管理器來在地化列印應用程式選項。在上下文中,應用所需的列印設置,但在外部恢復為預設值。
x = np.random.random(10) with np.printoptions(precision=3, suppress=True): print(x) # [ 0.073 0.461 0.689 0.754 0.624 0.901 0.049 0.582 0.557 0.348]
為了防止從浮點數末尾刪除零,您可以使用 np.set_printoptions 中的格式化程式參數。此參數可讓您為每種資料類型指定格式函數。
np.set_printoptions(formatter={'float': '{: 0.3f}'.format}) print(x) # Output: [ 0.078 0.480 0.413 0.830 0.776 0.102 0.513 0.462 0.335 0.712]
以上是如何在沒有科學記數法的情況下以指定的精度漂亮地列印 NumPy 數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!