Utilizzare le Funzioni di Aggregazione in NumPy

by theArchitect
SHARE
Utilizzare le Funzioni di Aggregazione in NumPy
© Guida-HTML5.it

Introduzione

NumPy è una libreria fondamentale per la programmazione scientifica in Python, grazie alla sua capacità di gestire array multidimensionali e fornire funzioni matematiche avanzate. In questo tutorial, esploreremo le funzioni di aggregazione in NumPy, che ci permettono di calcolare statistiche come la somma, la media, il valore massimo e minimo su array di dati. Queste funzioni sono essenziali per analizzare e sintetizzare informazioni in modo efficiente.

Codice completo

import numpy as np

# Creiamo un array NumPy di esempio
dati = np.array([[1, 2, 3],
                 [4, 5, 6],
                 [7, 8, 9]])

# Calcoliamo la somma di tutti gli elementi
somma_totale = np.sum(dati)
print("Somma totale:", somma_totale)

# Calcoliamo la media di tutti gli elementi
media_totale = np.mean(dati)
print("Media totale:", media_totale)

# Troviamo il valore massimo e minimo
valore_massimo = np.max(dati)
valore_minimo = np.min(dati)
print("Valore massimo:", valore_massimo)
print("Valore minimo:", valore_minimo)

# Calcoliamo la somma lungo le righe (asse 0)
somma_righe = np.sum(dati, axis=0)
print("Somma per colonna:", somma_righe)

# Calcoliamo la media lungo le colonne (asse 1)
media_colonne = np.mean(dati, axis=1)
print("Media per riga:", media_colonne)

# Calcoliamo il valore massimo lungo le righe
massimo_righe = np.max(dati, axis=0)
print("Massimo per colonna:", massimo_righe)

# Calcoliamo il valore minimo lungo le colonne
minimo_colonne = np.min(dati, axis=1)
print("Minimo per riga:", minimo_colonne)

Spiegazione

Nel codice sopra, abbiamo iniziato importando la libreria NumPy. Abbiamo poi creato un array bidimensionale chiamato dati, che contiene numeri interi. Le funzioni di aggregazione che abbiamo utilizzato sono:

  • np.sum(): calcola la somma di tutti gli elementi dell´array o lungo un asse specifico.
  • np.mean(): calcola la media degli elementi dell´array o lungo un asse specifico.
  • np.max(): restituisce il valore massimo dell´array o lungo un asse specifico.
  • np.min(): restituisce il valore minimo dell´array o lungo un asse specifico.

Abbiamo calcolato la somma totale degli elementi dell´array e la media totale. Inoltre, abbiamo trovato il valore massimo e minimo dell´intero array. Utilizzando il parametro axis, possiamo calcolare le aggregazioni lungo righe o colonne. Ad esempio, impostando axis=0, calcoliamo la somma per ogni colonna, mentre axis=1 calcola la media per ogni riga.

Best practice

Quando si utilizzano le funzioni di aggregazione in NumPy, è importante seguire alcune best practice:

  • Utilizza array NumPy: Le funzioni di aggregazione sono ottimizzate per lavorare con array NumPy. Evita di convertire i dati in liste Python, poiché ciò può ridurre le prestazioni.
  • Specifica l´asse quando necessario: Quando lavori con array multidimensionali, specifica sempre l´asse per ottenere risultati più chiari e pertinenti.
  • Controlla i dati mancanti: Prima di eseguire operazioni di aggregazione, verifica la presenza di valori NaN (Not a Number) e gestiscili di conseguenza, ad esempio utilizzando np.nanmean() per calcolare la media ignorando i NaN.
  • Documenta il tuo codice: Commenta il tuo codice per spiegare le operazioni di aggregazione eseguite, in modo che sia chiaro per te e per altri sviluppatori che potrebbero leggere il tuo codice in futuro.

Riepilogo

In questo tutorial, abbiamo esplorato le funzioni di aggregazione in NumPy, che ci consentono di calcolare statistiche fondamentali su array multidimensionali. Abbiamo visto come utilizzare funzioni come np.sum(), np.mean(), np.max() e np.min() per ottenere informazioni significative dai dati. Ricorda di seguire le best practice per garantire un codice chiaro e performante.

Approfondisci con risorse ufficiali

SHARE