Come calcolare una media troncata in python (con esempi)
Una media troncata è la media di un set di dati che è stata calcolata dopo aver rimosso una percentuale specifica dei valori più piccoli e più grandi nel set di dati.
Il modo più semplice per calcolare una media troncata in Python è utilizzare la funzione trim_mean() dalla libreria SciPy.
Questa funzione utilizza la seguente sintassi di base:
from scipy import stats #calculate 10% trimmed mean stats. trim_mean (data, 0.1 )
Gli esempi seguenti mostrano come utilizzare nella pratica questa funzione per calcolare una media troncata.
Esempio 1: calcolare la media troncata della tabella
Il codice seguente mostra come calcolare una media troncata del 10% per una tabella dati:
from scipy import stats #define data data = [22, 25, 29, 11, 14, 18, 13, 13, 17, 11, 8, 8, 7, 12, 15, 6, 8, 7, 9, 12] #calculate 10% trimmed mean stats. trim_mean (data, 0.1 ) 12,375
La media troncata al 10% è 12.375 .
Questa è la media del set di dati dopo che il 10% più piccolo e il 10% più grande dei valori sono stati rimossi dal set di dati.
Esempio 2: calcolare la media troncata della colonna nei panda
Il codice seguente mostra come calcolare una media troncata del 5% per una colonna specifica in un DataFrame panda:
from scipy import stats import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #calculate 5% trimmed mean of points stats. trim_mean (df. points , 0.05 ) 20.25
La media troncata al 5% dei valori nella colonna “punti” è 20,25 .
Questa è la media della colonna “punti” dopo aver rimosso i valori 5% più piccoli e 5% più grandi.
Esempio 3: calcolare la media troncata di più colonne
Il codice seguente mostra come calcolare una media troncata del 5% per più colonne in un DataFrame panda:
from scipy import stats import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #calculate 5% trimmed mean of 'points' and 'assists' columns stats. trim_mean (df[[' points ', ' assists ']], 0.05 ) array([20.25, 7.75])
Dal risultato possiamo vedere:
- La media troncata del 5% della colonna “punti” è 20,25 .
- La media troncata al 5% della colonna “assist” è 7,75 .
Nota : puoi trovare la documentazione completa per la funzione trim_mean() qui .
Risorse addizionali
Come calcolare manualmente una media troncata
Calcolatore della media troncata