Come calcolare la deviazione standard ponderata in python
La deviazione standard ponderata è un modo utile per misurare la dispersione dei valori in un set di dati quando alcuni valori nel set di dati hanno pesi più elevati di altri.
La formula per calcolare la deviazione standard ponderata è:
Oro:
- N: il numero totale di osservazioni
- M: il numero di pesi diversi da zero
- w i : un vettore di peso
- x i : un vettore di valori di dati
- x : la media ponderata
Il modo più semplice per calcolare una deviazione standard ponderata in Python è utilizzare la funzione DescrStatsW() dal pacchetto statsmodels:
DescrStatsW(values, weights=weights, ddof= 1 ). std
L’esempio seguente mostra come utilizzare questa funzione nella pratica.
Esempio: deviazione standard ponderata in Python
Supponiamo di avere la seguente matrice di valori di dati e i pesi corrispondenti:
#define data values values = [14, 19, 22, 25, 29, 31, 31, 38, 40, 41] #define weights weights = [1, 1, 1.5, 2, 2, 1.5, 1, 2, 3, 2]
Il codice seguente mostra come calcolare la deviazione standard ponderata per questa matrice di valori di dati:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted standard deviation
DescrStatsW(values, weights=weights, ddof= 1 ). std
8.570050878426773
La deviazione standard ponderata risulta essere 8,57 .
Tieni presente che possiamo anche utilizzare var per calcolare rapidamente la varianza ponderata:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted variance
DescrStatsW(values, weights=weights, ddof= 1 ). var
73.44577205882352
La varianza ponderata risulta essere 73.446 .
Risorse addizionali
I seguenti tutorial spiegano come calcolare la deviazione standard ponderata in altri software statistici:
Come calcolare la deviazione standard ponderata in Excel
Come calcolare la deviazione standard ponderata in R