Array numpy con stampa Python con precisione

Array numpy con stampa Python con precisione

Il più delle volte, il pacchetto numpy viene utilizzato per i dati computazionali scientifici negli array, il che significa che la lunghezza dei valori può essere massiccia, in particolare quella dei valori o dei valori a punta mobile definiti con notazione scientifica. Per formattare il risultato di stampa da questi array numpy, l'utente può utilizzare il metodo set_printoptions ().

Questo post spiegherà come utilizzare e formattare l'output dell'istruzione di stampa fino a una precisione specifica in Python. Il contenuto di questa guida contiene quanto segue:

Il metodo set_printoptions ()

Il metodo set_printoptions () viene utilizzato per definire le impostazioni predefinite per le istruzioni di stampa quando si stampano gli array numpy. Questo set_printoptions () prende molti argomenti diversi. La sintassi generale di questo metodo è definita di seguito:

numpy.set_printoptions (EdgeItems, Precision, Suppress, ...)

Nella sintassi:

  • EdgeItems: Questo argomento definisce il numero di elementi da visualizzare su entrambe le estremità nell'output per ogni dimensione dell'array. Tutti gli altri elementi nel mezzo non verrebbero visualizzati nell'output.
  • precisione: Questo argomento definisce il numero di cifre da visualizzare dopo il punto galleggiante
  • sopprimere: Questo argomento assume un valore booleano e definisce se visualizzare o meno il valore nella notazione scientifica.

Vediamo come stampare i valori di un array fino a una precisione specifica.

Come stampare l'array numpy con precisione usando il metodo set_printoptions ()?

Per dimostrare l'uso del metodo set_printoptions (), inizia prima creando un array che contiene valori di punta mobile con la seguente riga di codice:

importa numpy
setaRray = numpy.array ([1.2785,4.129837,0.112,65.2322331])

Successivamente, chiama il metodo set_printoptions () e, nell'argomento, definisci il valore di precisione (3 per questo post):

numpy.set_printoptions (precisione = 3)

Infine, stampa l'array numpy con l'aiuto del metodo Print ():

Stampa (SetaRay)

Quando questo codice viene eseguito, produrrà il seguente risultato sul terminale:

Come puoi osservare nell'output, i valori sono stati stampati con solo tre cifre dopo il punto galleggiante.

Come stampare valori scientifici con precisione in array numpy?

Un'altra cosa è che gli array numpy possono contenere i valori sotto forma di notazioni scientifiche e quando si desidera stampare quei valori con un valore di precisione set, è possibile utilizzare il metodo set_printoptions (). Per dimostrare questo, inizia semplicemente importando il pacchetto numpy e creando un array con la seguente riga:

importa numpy
setaRray = numpy.array ([1.3e-6, 1.2e-5, 1.1e-4])

Successivamente, usa semplicemente il metodo set_printoptions () e passa l'argomento "sopprime = true" per convertire la notazione scientifica in notazione puntuale mobile e passare l'argomento di precisione per specificare il numero di cifre dopo il punto galleggiante:

numpy.set_printoptions (precisione = 7, soppress = true)

Una volta fatto ciò, stampare semplicemente l'array sul terminale usando il metodo Print ():

Stampa (SetaRay)

Quando questo programma viene eseguito, produce il seguente risultato sul terminale:

Come puoi vedere che sei stato in grado di ottenere la stampa da un array numpy con valori di notazione scientifica fino a una precisione specifica.

Conclusione

Per ottenere l'output/stampa di valori da array numpy fino a un punto di precisione specifico, l'utente può utilizzare il metodo set_printoptions (). Per fare ciò, l'utente deve chiamare il metodo set_printoptions () con l'argomento "precisione" e specificare il numero di cifre da visualizzare dopo il punto decimale/mobile. Inoltre, con l'argomento "sopprimere", l'utente ha la possibilità di modificare il formato dei valori di notazione scientifica ai valori dei punti fluttuanti.