Benvenuto in questo nuovo articolo.
Oggi dopo diverso tempo torniamo a trattare Python. In particolare, continueremo la panoramica introduttiva su NumPy, una delle librerie più complete e utilizzate nel contesto della Data Science.
Come abbiamo accennato nella scorsa guida, uno dei punti di forza di questa libreria è senza dubbio l’ottimizzazione e la flessibilità per quanto riguarda l’uso di array, matrici e tensori.
Detto ciò, dopo aver visto le basi dell’uso degli array, in questo articolo andremo più a fondo, scoprendo insieme alcune operazioni su array leggermente più avanzate.
-
Linspace
Prima di tutto abbiamo bisogno di un array ben popolato. Dichiararlo manualmente sarebbe davvero noioso. Per questo motivo, ci avvarremo di uno strumento molto potente, la funzione linspace. Questa funzione crea e restituisce un array n numeri decimali equamente distribuiti in un intervallo da noi indicato
Fantastico vero? Abbiamo creato un array molto grande e con delle caratteristiche molto particolari, in un attimo.
Ora che abbiamo una buona base su cui lavorare, diamo un’occhiata alle operazioni avanzate di cui parlavamo in precedenze.
-
Round
Partiamo subito con la funzione round che ci permette di effettuare un arrotondamento rapido ed efficiente sui valori presenti in un qualsiasi array, matrice o tensore.
In questo caso, indichiamo come primo parametro della funzione il nostro array e come secondo parametro la precisione.
Ecco, ora abbiamo un array molto più semplice e maneggevole in cui i valori sono stati arrotondati alla seconda cifra dopo la virgola.
-
Slincing
Talvolta, dato un array potrebbe essere necessario estrarre o visualizzare solo una fetta (slice) di esso sulla base di alcuni parametri da noi indicati.
Fare questo usando gli array NumPy risulta molto comodo. Basta utilizzare la notazione [inizio:fine:passo] di fianco al nome del nostro array. In questo modo effettueremo un’estrazione degli elementi a partire dall’indice “inizio” fino all’indice “fine” con un passo uguale a “passo”.
Vediamo alcuni esempi:
-
Fancy Indexing
Concludiamo con una funzionalità parecchio strana e inusuale. Se ti dicessi che è possibile usare come indice di un array un altro array?
Utilizzando NumPy è possibile far ciò, utilizzando come indice di un array un altro array avente particolari caratteristiche come, ad esempio, valori solo ed esclusivamente booleani.
Vediamo insieme come:
Più facile a farsi che a dirsi. Come puoi notare, usando il fancy indexing abbiamo stampato solo gli elementi il cui indice corrisponde all’indice degli elementi aventi valore True nell’array indice.
Per il momento concludiamo qui ma NumPy ha ancora molto altro da offrirci. Quindi, continua a seguirci per non perderti i prossimi contenuti.
Comments