Hoe de variatiecoëfficiënt van r 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 van R te berekenen
Om de variatiecoëfficiënt van een gegevensset in R te berekenen, kunt u de volgende syntaxis gebruiken:
cv <- sd(data) / mean(data) * 100
De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld 1: Variatiecoëfficiënt voor een enkele vector
De volgende code laat zien hoe u de CV voor een enkele vector berekent:
#create vector of data data <- c(88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81, 82) #calculate CV cv <- sd(data) / mean(data) * 100 #display CV resume [1] 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 vectoren in een dataframe kunt berekenen met behulp van de functie sapply() :
#create data frame data <- data.frame(a=c(88, 85, 82, 97, 67, 77, 74, 86, 81, 95), b=c(77, 88, 85, 76, 81, 82, 88, 91, 92, 99), c=c(67, 68, 68, 74, 74, 76, 76, 77, 78, 84)) #calculate CV for each column in data frame sapply(data, function (x) sd(x) / mean(x) * 100 ) ABC 11.012892 8.330843 7.154009
Zorg ervoor dat u na.rm=T gebruikt als er in uw gegevens ook waarden ontbreken. Dit vertelt R om ontbrekende waarden eenvoudigweg te negeren bij het berekenen van de variatiecoëfficiënt:
#create data frame data <- data.frame(a=c(88, 85, 82, 97, 67, 77, 74, 86, 81, 95), b=c(77, 88, 85, 76, 81, 82, 88, 91, NA , 99), c=c(67, 68, 68, 74, 74, 76, 76, 77, 78, NA )) #calculate CV for each column in data frame sapply(data, function (x) sd(x, na.rm= T ) / mean(x, na.rm= T ) * 100 ) ABC 11.012892 8.497612 5.860924
Aanvullende bronnen
Hoe de absolute mediaanafwijking in R te berekenen
Hoe de standaarddeviatie in R te berekenen
Hoe bereik te vinden in R