Gli array nel modulo NumPy
NumPy è una libreria fondamentale per il calcolo scientifico e numerico in Python. È particolarmente rinomata per la sua capacità di gestire array multidimensionali in modo efficiente, offrendo un supporto esteso per operazioni matematiche, algebriche, e statistiche.
Gli array di NumPy, chiamati ndarray (array N-dimensionali), sono una struttura dati che consente di memorizzare e manipolare insiemi di dati in modo rapido ed efficiente.
A differenza delle liste native di Python, gli array di NumPy sono omogenei, il che significa che tutti gli elementi dell'array devono essere dello stesso tipo. Questa omogeneità consente a NumPy di ottimizzare le operazioni, rendendole molto più veloci rispetto alle normali operazioni su liste.
Creazione di array in NumPy
Creare un array in NumPy è un processo semplice e diretto. Esistono diversi metodi per creare array, a seconda delle esigenze specifiche.
Il metodo più comune per creare un array è convertire una lista o una tupla esistente in un array di NumPy:
import numpy as np
# Creare un array a partire da una lista
array_da_lista = np.array([1, 2, 3, 4, 5])
# Creare un array a partire da una tupla
array_da_tupla = np.array((6, 7, 8, 9, 10))
Proprietà degli array NumPy
Gli array di NumPy offrono una serie di proprietà che forniscono informazioni utili sulla loro struttura e sui dati che contengono.
Ad esempio, puoi facilmente ottenere il numero di dimensioni (assi) di un array e la sua forma (numero di elementi per ogni asse):
array = np.array([[1, 2, 3], [4, 5, 6]])
# Numero di dimensioni (ndim)
print(array.ndim) # Output: 2
# Forma dell'array (shape)
print(array.shape) # Output: (2, 3)
Operazioni sugli array NumPy
Una delle caratteristiche più potenti di NumPy è la capacità di eseguire operazioni vettoriali, ovvero operazioni che possono essere applicate simultaneamente a tutti gli elementi di un array.
Le operazioni aritmetiche di base possono essere eseguite direttamente sugli array, evitando la necessità di loop espliciti:
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
# Somma elemento per elemento
somma = a + b # Output: [5, 7, 9]
# Sottrazione
sottrazione = a - b # Output: [-3, -3, -3]
# Moltiplicazione
moltiplicazione = a * b # Output: [4, 10, 18]
# Divisione
divisione = a / b # Output: [0.25, 0.4, 0.5]
Gli array di NumPy sono uno strumento essenziale per chiunque lavori con dati numerici in Python. Offrono una vasta gamma di funzionalità, dalle operazioni matematiche avanzate alla manipolazione e trasformazione dei dati, rendendoli ideali in una moltitudine di applicazioni.