NumPy è una libreria open source che fornisce supporto per array e matrici multidimensionali, insieme a una vasta collezione di funzioni matematiche per operare su queste strutture dati. È una delle librerie fondamentali per il calcolo scientifico in Python.
NumPy può essere installato utilizzando il gestore di pacchetti pip:
pip install numpy
Gli array NumPy sono simili alle liste di Python, ma sono più efficienti per la memorizzazione e la manipolazione dei dati. Gli array NumPy possono essere creati da liste di Python utilizzando la funzione numpy.array
.
import numpy as np
# Creazione di un array NumPy
a = np.array([1, 2, 3, 4, 5])
print(a)
Gli array NumPy possono essere multidimensionali, ad esempio una matrice bidimensionale può essere creata da una lista di liste.
# Creazione di una matrice NumPy
m = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(m)
Gli array NumPy supportano molte operazioni matematiche, come l’addizione, la sottrazione, la moltiplicazione e la divisione. Queste operazioni vengono eseguite elemento per elemento.
# Operazioni sugli array
a = np.array([1, 2, 3, 4, 5])
b = np.array([5, 4, 3, 2, 1])
print(a + b)
print(a - b)
print(a * b)
print(a / b)
NumPy fornisce molte funzioni matematiche per operare sugli array, come la radice quadrata, il logaritmo, il seno e il coseno.
# Funzioni matematiche
a = np.array([1, 2, 3, 4, 5])
print(np.sqrt(a))
print(np.log(a))
print(np.sin(a))
print(np.cos(a))
Gli array NumPy supportano metodi di aggregazione per calcolare statistiche, come la somma, la media, la deviazione standard e il massimo e il minimo.
# Metodi di aggregazione
a = np.array([1, 2, 3, 4, 5])
print(a.sum())
print(a.mean())
print(a.std())
print(a.max())
print(a.min())
Gli array NumPy supportano l’indicizzazione e lo slicing, come le liste di Python.
# Indicizzazione e slicing
a = np.array([1, 2, 3, 4, 5])
print(a[0]) # Primo elemento
print(a[1:3]) # Slicing
print(a[3:]) # Slicing
NumPy fornisce molti metodi per manipolare e analizzare gli array. Alcuni dei metodi principali sono:
array()
: crea un array NumPyarange()
: crea un array di valori equispaziatilinspace()
: crea un array di valori equispaziati con un numero specifico di elementizeros()
: crea un array di zeriones()
: crea un array di unoeye()
: crea una matrice identitàreshape()
: cambia la forma di un arraytranspose()
: trasposta di un arrayconcatenate()
: concatena gli array lungo un asse specificosplit()
: divide un array in sottoarraysort()
: ordina gli elementi di un arrayunique()
: restituisce gli elementi unici di un array# Esempi di utilizzo dei metodi principali
a = np.array([1, 2, 3, 4, 5])
print(np.arange(1, 10, 2))
print(np.linspace(0, 1, 5))
print(np.zeros(5))
print(np.ones(5))
print(np.eye(3))
print(a.reshape(5, 1))
print(a.transpose())
print(np.concatenate([a, a]))
print(np.split(a, [2, 4]))
print(np.sort(a))
print(np.unique([1, 2, 2, 3, 3, 3]))
Gli array NumPy supportano l’iterazione utilizzando il ciclo for
.
# Iterazione sugli array
a = np.array([1, 2, 3, 4, 5])
for x in a:
print(x)
NumPy è una libreria fondamentale per il calcolo scientifico in Python. Fornisce supporto per array e matrici multidimensionali, insieme a una vasta collezione di funzioni matematiche per operare su queste strutture dati.