Qual è il pacchetto Python Numpy?
In poche parole, Numpy rappresenta "Python numerico" ed è ciò che mira a soddisfare, per consentire operazioni numeriche complesse eseguite su oggetti di array n-dimensionali molto facilmente e in modo intuitivo. È la libreria principale utilizzata in Calcolo scientifico, Con funzioni presenti per eseguire operazioni algebriche lineari e operazioni statistiche.
Uno dei concetti più fondamentali (e attraenti) per Numpy è il suo utilizzo di oggetti di array n-dimensionali. Possiamo prendere questo array come solo un Raccolta di righe e colonna, Proprio come un file MS-Excel. È possibile convertire un elenco di Python in un array numpy e gestire funzioni su di esso.
Rappresentazione dell'array numpy
Solo una nota prima di iniziare, utilizziamo un ambiente virtuale per questa lezione che abbiamo fatto con il seguente comando:
Python -m Virtualenv NumpyUna volta che l'ambiente virtuale è attivo, possiamo installare la libreria numpy all'interno dell'ENV virtuale in modo che gli esempi che creiamo dopo possano essere eseguiti:
PIP Installa numpyVediamo qualcosa del genere quando eseguiamo il comando sopra:
Proviamo rapidamente se il pacchetto numpy è stato installato correttamente con il seguente frammento di codice breve:
Importa Numpy come NPUna volta eseguito il programma sopra, dovresti vedere il seguente output:
Possiamo anche avere array multidimensionali con numpy:
multi_dimension = np.array ([(1, 2, 3), (4, 5, 6)])Questo produrrà un output come:
[[1 2 3]Puoi usare anche Anaconda per eseguire questi esempi, il che è più facile ed è quello che abbiamo usato sopra. Se vuoi installarlo sulla tua macchina, guarda la lezione che descrive “Come installare Anaconda Python su Ubuntu 18.04 LTS ”e condividi il tuo feedback. Ora, andiamo avanti verso vari tipi di operazioni che possono essere eseguite con con python numpy array.
Utilizzo di array numpy su elenchi di pitone
È importante chiedere che quando Python abbia già una sofisticata struttura di dati per contenere più elementi rispetto al perché abbiamo bisogno di array numpy? Gli array numpy sono Preferito su elenchi di Python Per i seguenti motivi:
Lasciateci Dimostrare che gli array numpy occupano meno memoria. Questo può essere fatto scrivendo un programma Python molto semplice:
Importa Numpy come NPQuando eseguiamo il programma sopra, otterremo il seguente output:
14000Questo dimostra che lo stesso elenco di dimensioni è più di 3 volte di dimensioni rispetto all'array numpy delle stesse dimensioni.
Eseguire operazioni numpy
In questa sezione, diamo un'occhiata rapidamente alle operazioni che possono essere eseguite su array numpy.
Poiché l'array numpy può essere utilizzato in qualsiasi spazio dimensionale per contenere i dati, possiamo trovare la dimensione di un array con il seguente frammento di codice:
Importa Numpy come NPVedremo l'output come "2" in quanto questo è un array bidimensionale.
Possiamo usare l'array numpy per contenere qualsiasi tipo di dati. Scopriamo ora il tipo di dati dei dati che un array contiene:
Altro_arr = np.Array ([('Awe', 'B', 'Cat')])Abbiamo usato diversi tipi di elementi nello snippet di codice sopra. Ecco l'output che questo script mostrerà:
Questo accade quando i personaggi vengono interpretati come caratteri Unicode e il secondo è ovvio.
Se un array numpy è composto da 2 righe e 4 colonne, può essere rimodellato per contenere 4 righe e 2 colonne. Scriviamo un semplice frammento di codice per lo stesso:
originale = np.array ([("1", "b", "c", "4"), ("5", "f", "g", "8")])Una volta eseguito lo snippet di codice sopra, otterremo il seguente output con entrambi gli array stampati sullo schermo:
[['1' 'B' 'C' '4'Nota come Numpy si è preso cura di spostare e associarsi gli elementi a nuove righe.
L'esecuzione di operazioni matematiche su elementi di un array è molto semplice. Inizieremo scrivendo un semplice frammento di codice per scoprire il massimo, il minimo e l'aggiunta di tutti gli elementi dell'array. Ecco lo snippet di codice:
numpy_arr = np.array ([(1, 2, 3, 4, 5)])Nelle ultime 2 operazioni sopra, abbiamo anche calcolato la radice quadrata e la deviazione standard di ciascun elemento dell'array. Lo snippet sopra fornirà la seguente uscita:
5Anche se hai utilizzato elenchi Python nei tuoi programmi esistenti e non vuoi cambiare tutto quel codice ma vuoi comunque utilizzare array numpy nel tuo nuovo codice, è bene sapere che possiamo facilmente convertire un Python Elenca di un array numpy. Ecco un esempio:
# Crea 2 nuovi elenchi altezza e pesoSolo per controllare, ora possiamo stampare il tipo di variabili:
stampa (tipo (np_height))E questo mostrerà:
Ora possiamo eseguire operazioni matematiche su tutti gli articoli contemporaneamente. Vediamo come possiamo calcolare l'IMC delle persone:
# Calcola BMIQuesto mostrerà l'IMC di tutte le persone calcolate in termini di elementi:
[16.31682957 11.8394056 29.54033934 39.02460418 29.8200692 21.04699584]Non è così facile e utile? Possiamo persino filtrare i dati facilmente con una condizione al posto di un indice all'interno delle staffe quadrate:
BMI [BMI> 25]Questo darà:
array ([29.54033934, 39.02460418, 29.8200692])Crea sequenze e ripetizioni casuali con numpy
Con molte funzionalità presenti in Numpy per creare dati casuali e organizzarli in un modulo richiesto, gli array numpy vengono utilizzati molte volte nella generazione di set di dati di test in molti luoghi, inclusi scopi di debug e test. Ad esempio, se si desidera creare un array da 0 a N, possiamo usare l'Arange (nota il singolo 'R') come lo snippet dato:
Stampa (NP.Arange (5))Questo restituirà l'output come:
[0 1 2 3 4]La stessa funzione può essere utilizzata per fornire un valore inferiore in modo che l'array inizi da altri numeri di 0:
Stampa (NP.Arange (4, 12))Questo restituirà l'output come:
[4 5 6 7 8 9 10 11]I numeri non devono essere continui, possono saltare un passaggio di correzione come:
Stampa (NP.Arange (4, 14, 2))Questo restituirà l'output come:
[4 6 8 10 12]Possiamo anche ottenere i numeri in un ordine decrescente con un valore di salto negativo:
Stampa (NP.Arange (14, 4, -1))Questo restituirà l'output come:
[14 13 12 11 10 9 8 7 6 5]È possibile finanziare n numeri tra xey con spazio uguale con il metodo LinSpace, ecco lo snippet di codice per lo stesso:
np.Linspace (start = 10, stop = 70, num = 10, dType = int)Questo restituirà l'output come:
Array ([10, 16, 23, 30, 36, 43, 50, 56, 63, 70])Si prega di notare che gli elementi di uscita non sono equamente distanziati. Numpy fa del suo meglio per farlo, ma non è necessario fare affidamento su di esso come si arrotonda.
Infine, esaminiamo come possiamo generare una serie di sequenze casuali con Numpy che è una delle funzioni più utilizzate per scopi di test. Passeremo un intervallo di numeri a Numpy che verrà utilizzato come punto iniziale e finale per i numeri casuali:
Stampa (NP.casuale.Randint (0, 10, size = [2,2]))Lo snippet sopra crea un array numpy 2 per 2 per 2 dimensionali che conterrà numeri casuali tra 0 e 10. Ecco l'output del campione:
[[0 4]Si prega di notare poiché i numeri sono casuali, l'output può differire anche tra le 2 corse sulla stessa macchina.
In questa lezione, abbiamo esaminato vari aspetti di questa libreria di elaborazione che possiamo usare con Python per calcolare problemi matematici semplici e complessi che possono sorgere in vari casi d'uso che Numpy è una delle più importanti libreria di calcolo quando si tratta di Ingegneria dei dati e calcolo di DAT numerici, sicuramente un'abilità che dobbiamo avere sotto la nostra cintura.
Condividi il tuo feedback sulla lezione su Twitter con @sbmaggarwal e @linuxhint.