Heim > Backend-Entwicklung > Python-Tutorial > Wie kann man NumPy-Arrays ohne wissenschaftliche Notation und mit angegebener Präzision hübsch drucken?

Wie kann man NumPy-Arrays ohne wissenschaftliche Notation und mit angegebener Präzision hübsch drucken?

DDD
Freigeben: 2024-12-08 11:41:11
Original
1065 Leute haben es durchsucht

How to Pretty-Print NumPy Arrays Without Scientific Notation and with Specified Precision?

Drucken Sie ein NumPy-Array ohne wissenschaftliche Notation und mit vorgegebener Genauigkeit hübsch aus.

Beim Drucken von NumPy-Arrays mit Gleitkommazahlen ergeben sich häufig mehrere Dezimalstellen und verwendet ein wissenschaftliches Format, was die Lesbarkeit erschwert, insbesondere bei niedrigdimensionalen Arrays. Da NumPy-Arrays als Zeichenfolgen gedruckt werden müssen, stellt sich die Frage nach einer Lösung für dieses Problem.

Mit numpy.set_printoptions können Sie die gewünschte Genauigkeit für Ihre Ausgabe festlegen. Durch Setzen dieser Option können Sie die Anzahl der angezeigten Dezimalstellen steuern.

Um die Lesbarkeit weiter zu verbessern, können Sie die wissenschaftliche Notation mithilfe der Unterdrückungsoption deaktivieren. Dadurch wird sichergestellt, dass kleine Zahlen in der Standardnotation angezeigt werden.

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]
Nach dem Login kopieren
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. ]
Nach dem Login kopieren

Wenn Sie NumPy Version 1.15.0 oder höher verwenden, können Sie den Kontextmanager numpy.printoptions für die lokalisierte Anwendung von Drucken nutzen Optionen. Innerhalb des Kontexts werden die gewünschten Druckeinstellungen angewendet, außerhalb jedoch auf die Standardeinstellungen zurückgesetzt.

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]
Nach dem Login kopieren

Um zu verhindern, dass Nullen am Ende von Floats entfernt werden, können Sie den Formatter-Parameter in np.set_printoptions verwenden. Mit diesem Parameter können Sie für jeden Datentyp eine Formatfunktion angeben.

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]
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann man NumPy-Arrays ohne wissenschaftliche Notation und mit angegebener Präzision hübsch drucken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage