Hoe u de gewogen standaarddeviatie in python kunt berekenen
Gewogen standaarddeviatie is een handige manier om de spreiding van waarden in een dataset te meten wanneer sommige waarden in de dataset een hoger gewicht hebben dan andere.
De formule voor het berekenen van een gewogen standaardafwijking is:
Goud:
- N: Het totale aantal waarnemingen
- M: Het aantal niet-nulgewichten
- w i : Een gewichtsvector
- x i : Een vector van gegevenswaarden
- x : Het gewogen gemiddelde
De eenvoudigste manier om een gewogen standaardafwijking in Python te berekenen is door de functie DescrStatsW() uit het statsmodels-pakket te gebruiken:
DescrStatsW(values, weights=weights, ddof= 1 ). std
Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.
Voorbeeld: gewogen standaarddeviatie in Python
Stel dat we de volgende reeks gegevenswaarden en de bijbehorende gewichten hebben:
#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]
De volgende code laat zien hoe u de gewogen standaardafwijking voor deze reeks gegevenswaarden kunt berekenen:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted standard deviation
DescrStatsW(values, weights=weights, ddof= 1 ). std
8.570050878426773
De gewogen standaarddeviatie blijkt 8,57 te zijn.
Merk op dat we var ook kunnen gebruiken om snel de gewogen variantie te berekenen:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted variance
DescrStatsW(values, weights=weights, ddof= 1 ). var
73.44577205882352
De gewogen variantie blijkt 73.446 te zijn.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u de gewogen standaarddeviatie in andere statistische software kunt berekenen:
Hoe u de gewogen standaarddeviatie in Excel kunt berekenen
Hoe de gewogen standaarddeviatie in R te berekenen