NumPy arrays can be challenging to read when printed with default options. Scientific notation and excessive decimals can make interpretation difficult. This article provides solutions for presenting NumPy arrays in a more readable format, with specified precision and suppression of scientific notation.
Using 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]
The precision option controls the number of decimal places printed.
Suppressing Scientific Notation
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. ]
The suppress option prevents the use of scientific notation for small numbers.
Local Print Options Using a Context Manager
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]
This context manager temporarily changes the print options for the code inside the with-block.
Preserving Trailing Zeros
np.set_printoptions(formatter={'float': '{: 0.3f}'.format}) print(x) # [ 0.078 0.480 0.413 0.830 0.776 0.102 0.513 0.462 0.335 0.712]
The formatter option allows for custom formatting of each element type. Here, a format string is used to ensure trailing zeros are preserved.
The above is the detailed content of How Can I Improve the Readability of NumPy Array Output?. For more information, please follow other related articles on the PHP Chinese website!