Home >Backend Development >Python Tutorial >How Can I Improve the Readability of NumPy Array Output?

How Can I Improve the Readability of NumPy Array Output?

Barbara Streisand
Barbara StreisandOriginal
2024-12-04 09:31:10955browse

How Can I Improve the Readability of NumPy Array Output?

Pretty-Printing NumPy Arrays: Precision and Suppression

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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn