Hoe de variatiecoëfficiënt in python te berekenen


Een variatiecoëfficiënt , vaak afgekort tot CV , is een manier om de spreiding van waarden in een dataset ten opzichte van het gemiddelde te meten. Het wordt als volgt berekend:

CV = σ / μ

Goud:

  • σ: de standaardafwijking van de dataset
  • μ: het gemiddelde van de dataset

Simpel gezegd is de variatiecoëfficiënt eenvoudigweg de verhouding tussen de standaarddeviatie en het gemiddelde.

Wanneer moet u de variatiecoëfficiënt gebruiken?

De variatiecoëfficiënt wordt vaak gebruikt om de variatie tussen twee verschillende gegevenssets te vergelijken.

In de echte wereld wordt het in de financiële wereld vaak gebruikt om het gemiddelde verwachte rendement van een investering te vergelijken met de verwachte standaardafwijking van de investering. Hierdoor kunnen beleggers de risico-rendementsafweging tussen beleggingen vergelijken.

Stel dat een belegger overweegt te beleggen in de volgende twee beleggingsfondsen:

Beleggingsfonds A: gemiddelde = 9%, standaardafwijking = 12,4%

UCITS B: gemiddelde = 5%, standaardafwijking = 8,2%

Door de variatiecoëfficiënt van elk fonds te berekenen, merkt de belegger het volgende op:

CV voor beleggingsfonds A = 12,4% /9% = 1,38

CV voor beleggingsfonds B = 8,2% / 5% = 1,64

Omdat beleggingsfonds A een lagere variatiecoëfficiënt heeft, biedt het een beter gemiddeld rendement in vergelijking met de standaardafwijking.

Hoe de variatiecoëfficiënt in Python te berekenen

Om de variatiecoëfficiënt van een dataset in Python te berekenen, kun je de volgende syntaxis gebruiken:

 import numpy as np

cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld 1: Variatiecoëfficiënt voor een enkel netwerk

De volgende code laat zien hoe u de CV voor één tabel berekent:

 #create vector of data
data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81, 82]

#define function to calculate cv
cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100 

#calculate CV
cv(data)

9.234518

De variatiecoëfficiënt blijkt 9,23 te zijn.

Voorbeeld 2: Variatiecoëfficiënt voor verschillende vectoren

De volgende code laat zien hoe u de CV van meerdere kolommen in een Panda DataFrame berekent:

 import numpy as np
import pandas as pd

#define function to calculate cv
cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100

#create pandas DataFrame
df = pd. DataFrame ({'a': [88, 85, 82, 97, 67, 77, 74, 86, 81, 95],
                   'b': [77, 88, 85, 76, 81, 82, 88, 91, 92, 99],
                   'c': [67, 68, 68, 74, 74, 76, 76, 77, 78, 84]})

#calculate CV for each column in data frame
df. apply (cv)

a 11.012892
b8.330843
c7.154009
dtype:float64

Houd er rekening mee dat ontbrekende waarden eenvoudigweg worden genegeerd bij het berekenen van de variatiecoëfficiënt:

 import numpy as np
import pandas as pd

#define function to calculate cv
cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100

#create pandas DataFrame
df = pd. DataFrame ({'a': [88, 85, 82, 97, 67, 77, 74, 86, 81, 95],
                   'b': [77, 88, 85, 76, 81, 82, 88, 91, np. no , 99],
                   'c': [67, 68, 68, 74, 74, 76, 76, 77, 78, np. no ]})

#calculate CV for each column in data frame
df. apply (cv)

a 11.012892
b 8.497612
c5.860924
dtype:float64

Aanvullende bronnen

Hoe de variatiecoëfficiënt van R te berekenen
Hoe de variatiecoëfficiënt in Excel te berekenen
Hoe de variatiecoëfficiënt in Google Spreadsheets te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert