Aritmetica Ufunc NumPy
NumPy (Numerical Python) è una potente libreria Python utilizzata per l’elaborazione di dati numerici, in particolare per lavorare con array multidimensionali. Una delle caratteristiche più potenti di NumPy è la capacità di eseguire operazioni aritmetiche elemento per elemento su array utilizzando le cosiddette Funzioni Universali, o ufunc. In questo articolo, esploreremo tutti i casi di operazioni aritmetiche che è possibile eseguire con le ufunc in NumPy.
Introduzione alle Ufunc
Le Funzioni Universali, o ufunc, in NumPy sono funzioni che operano su array NumPy elemento per elemento. Questo significa che eseguono un’operazione specifica su ciascun elemento di un array senza la necessità di scrivere loop espliciti. Le ufunc sono altamente ottimizzate per garantire prestazioni elevate e sono ampiamente utilizzate per eseguire operazioni matematiche, logiche e altre su array multidimensionali.
Addizione
Per eseguire l’addizione tra due array NumPy, puoi utilizzare la funzione np.add()
o semplicemente l’operatore +
. Ecco un esempio:
import numpy as np
a = np.array([1, 2, 3])b = np.array([4, 5, 6])
# Utilizzando np.add()risultato1 = np.add(a, b)
# Utilizzando l'operatore +risultato2 = a + b
Entrambe le linee di codice produrranno lo stesso risultato, cioè risultato1
e risultato2
con il valore [5, 7, 9]
.
Sottrazione
Per eseguire la sottrazione tra due array NumPy, puoi utilizzare la funzione np.subtract()
o l’operatore -
. Ecco un esempio:
import numpy as np
a = np.array([7, 8, 9])b = np.array([4, 5, 6])
# Utilizzando np.subtract()risultato1 = np.subtract(a, b)
# Utilizzando l'operatore -risultato2 = a - b
Entrambe le linee di codice produrranno lo stesso risultato, cioè risultato1
e risultato2
con il valore [3, 3, 3]
.
Moltiplicazione
Per eseguire la moltiplicazione tra due array NumPy, puoi utilizzare la funzione np.multiply()
o l’operatore *
. Ecco un esempio:
import numpy as np
a = np.array([1, 2, 3])b = np.array([4, 5, 6])
# Utilizzando np.multiply()risultato1 = np.multiply(a, b)
# Utilizzando l'operatore *risultato2 = a * b
Entrambe le linee di codice produrranno lo stesso risultato, cioè risultato1
e risultato2
con il valore [4, 10, 18]
.
Divisione
Per eseguire la divisione tra due array NumPy, puoi utilizzare la funzione np.divide()
o l’operatore /
. Ecco un esempio:
import numpy as np
a = np.array([7, 8, 9])b = np.array([1, 2, 3])
# Utilizzando np.divide()risultato1 = np.divide(a, b)
# Utilizzando l'operatore /risultato2 = a / b
Entrambe le linee di codice produrranno lo stesso risultato, cioè risultato1
e risultato2
con il valore [7.0, 4.0, 3.0]
.
Conclusioni
Le Funzioni Universali (ufunc) in NumPy rendono molto più semplice ed efficiente eseguire operazioni aritmetiche elemento per elemento su array NumPy. Questi sono solo alcuni dei casi comuni di operazioni aritmetiche, ma NumPy supporta molte altre funzioni e operazioni avanzate che consentono di lavorare con dati numerici in modo rapido ed efficiente. La capacità di NumPy di gestire array multidimensionali e l’utilizzo delle ufunc lo rendono uno strumento essenziale per gli scienziati dei dati, gli ingegneri e gli analisti che lavorano con dati numerici complessi.