Jak obliczyć średnią geometryczną w r (z przykładami)
Do obliczenia średniej geometrycznej zbioru liczb w R można użyć następującej składni:
exp(mean(log(x)))
Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję.
Przykład 1: Oblicz średnią geometryczną wektora
Poniższy kod pokazuje, jak obliczyć średnią geometryczną pojedynczego wektora w R:
#definevector x <- c(4, 8, 9, 9, 12, 14, 17) #calculate geometric mean of values in vector exp(mean(log(x))) [1] 9.579479
Przykład 2: Oblicz średnią geometryczną wektora zawierającego zera
Jeśli wektor zawiera zera lub liczby ujemne, powyższa formuła zwróci 0 lub NaN.
Aby zignorować zera i liczby ujemne podczas obliczania średniej geometrycznej, możesz użyć następującego wzoru:
#define vector with some zeros and negative numbers x <- c(4, 8, 9, 9, 12, 14, 17, 0, -4) #calculate geometric mean of values in vector exp(mean(log(x[x > 0]))) [1] 9.579479
Przykład 3: Oblicz średnią geometryczną kolumn w ramce danych
Poniższy kod pokazuje, jak obliczyć średnią geometryczną kolumny w ramce danych:
#define data frame df <- data. frame (a=c(1, 3, 4, 6, 8, 8, 9), b=c(7, 8, 8, 7, 13, 14, 16), c=c(11, 13, 13, 18, 19, 19, 22), d=c(4, 8, 9, 9, 12, 14, 17)) #calculate geometric mean of values in column 'a' exp(mean(log(df$a))) [1] 4.567508
Poniższy kod pokazuje, jak obliczyć średnią geometryczną wielu kolumn w ramce danych:
#define data frame df <- data. frame (a=c(1, 3, 4, 6, 8, 8, 9), b=c(7, 8, 8, 7, 13, 14, 16), c=c(11, 13, 13, 18, 19, 19, 22), d=c(4, 8, 9, 9, 12, 14, 17)) #calculate geometric mean of values in column 'a', 'b', and 'd' apply(df[, c(' a ', ' b ', ' d ')], 2, function (x) exp(mean(log(x)))) abd 4.567508 9.871128 9.579479
Dodatkowe zasoby
Jak obliczyć średnią na grupę w R
Jak obliczyć średnią ważoną w R
Jak obliczyć błąd standardowy średniej w R