Jak obliczyć współczynnik zmienności r
Współczynnik zmienności , często w skrócie CV , to sposób pomiaru rozrzutu wartości w zbiorze danych w stosunku do średniej. Oblicza się go w następujący sposób:
CV = σ / μ
Złoto:
- σ: odchylenie standardowe zbioru danych
- μ: średnia ze zbioru danych
Mówiąc najprościej, współczynnik zmienności to po prostu stosunek odchylenia standardowego do średniej.
Kiedy stosować współczynnik zmienności
Współczynnik zmienności jest często używany do porównywania zmienności między dwoma różnymi zestawami danych.
W prawdziwym świecie jest często używany w finansach do porównywania średniego oczekiwanego zwrotu z inwestycji z oczekiwanym odchyleniem standardowym inwestycji. Umożliwia to inwestorom porównanie stosunku ryzyka do zwrotu pomiędzy inwestycjami.
Załóżmy na przykład, że inwestor rozważa inwestycję w następujące dwa fundusze wspólnego inwestowania:
Fundusz inwestycyjny A: średnia = 9%, odchylenie standardowe = 12,4%
UCITS B: średnia = 5%, odchylenie standardowe = 8,2%
Obliczając współczynnik zmienności każdego funduszu, inwestor zauważa:
CV dla funduszu inwestycyjnego A = 12,4% /9% = 1,38
CV dla funduszu inwestycyjnego B = 8,2% / 5% = 1,64
Ponieważ fundusz inwestycyjny A ma niższy współczynnik zmienności, zapewnia lepszy średni zwrot w porównaniu z odchyleniem standardowym.
Jak obliczyć współczynnik zmienności R
Aby obliczyć współczynnik zmienności zbioru danych w R, można zastosować następującą składnię:
cv <- sd(data) / mean(data) * 100
Poniższe przykłady pokazują, jak używać tej składni w praktyce.
Przykład 1: Współczynnik zmienności dla pojedynczego wektora
Poniższy kod pokazuje, jak obliczyć CV dla pojedynczego wektora:
#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
Współczynnik zmienności okazuje się wynosić 9,23 .
Przykład 2: Współczynnik zmienności dla kilku wektorów
Poniższy kod pokazuje, jak obliczyć CV wielu wektorów w ramce danych za pomocą funkcji 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
Upewnij się, że używasz na.rm=T , jeśli w danych również brakuje wartości. To mówi R, aby po prostu zignorował brakujące wartości podczas obliczania współczynnika zmienności:
#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
Dodatkowe zasoby
Jak obliczyć bezwzględne odchylenie mediany w R
Jak obliczyć odchylenie standardowe w R
Jak znaleźć zasięg w R