Calcola la modalità di array in NumPy

Muhammad Maisam Abbas 30 gennaio 2023
  1. Calcola la modalità di un array NumPy con la funzione scipy.stats.mode()
  2. Calcola la modalità di un array NumPy con la funzione numpy.unique()
Calcola la modalità di array in NumPy

Questo tutorial introdurrà come calcolare la modalità di un array NumPy in Python.

Calcola la modalità di un array NumPy con la funzione scipy.stats.mode()

La modalità è il valore più ripetuto in una raccolta. La libreria scipy.stats contiene molte funzioni relative alle statistiche. La funzione mode() all’interno della libreria scipy.stats trova la modalità di un array in Python. Prende un array come argomento di input e restituisce un array dei valori più comuni all’interno dell’array di input. Perché questo metodo funzioni, dobbiamo installare il pacchetto scipy. Il comando per installarlo è riportato di seguito.

pip install scipy

Il seguente esempio di codice ci mostra come calcolare la modalità all’interno di un array NumPy con la funzione scipy.stats.mode().

import numpy as np
from scipy import stats

array = np.array([1, 2, 3, 4, 4, 5])
mode = stats.mode(array)
print(mode[0])

Produzione:

[4]

Per prima cosa abbiamo creato l’array array con la funzione np.array(). Abbiamo quindi calcolato la modalità con la funzione scipy.stats.mode() e memorizzato il risultato all’interno dell’array mode. Alla fine, abbiamo visualizzato il valore più ripetuto stampando il primo elemento dell’array mode.

Calcola la modalità di un array NumPy con la funzione numpy.unique()

Se vogliamo usare il pacchetto NumPy solo per trovare la modalità, possiamo usare la funzione numpy.unique(). La funzione numpy.unique() accetta un array come argomento di input e restituisce un array di tutti gli elementi univoci all’interno dell’array di input. Possiamo anche specificare il parametro return_count su True per ottenere il numero di volte in cui ogni elemento univoco viene ripetuto all’interno dell’array di input.

import numpy as np

array = np.array([1, 2, 3, 4, 4, 5])
vals, counts = np.unique(array, return_counts=True)
index = np.argmax(counts)
print(vals[index])

Produzione:

4

Nel codice sopra, abbiamo calcolato la modalità dell’array NumPy array con le funzioni np.unique() e np.argmax() in Python. Per prima cosa abbiamo creato l’array array con la funzione np.array(). Abbiamo quindi utilizzato la funzione np.unique() e memorizzato i valori univoci all’interno dell’array vals e il numero di volte in cui ogni valore viene ripetuto all’interno dell’array counts. Abbiamo quindi calcolato il valore massimo all’interno dell’array counts con la funzione np.argmax() e memorizzato il valore all’interno della variabile index. Alla fine, abbiamo visualizzato la modalità stampando il valore all’indice index dell’array vals.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn