Hoe het geometrische gemiddelde in r te berekenen (met voorbeelden)


U kunt de volgende syntaxis gebruiken om het geometrische gemiddelde van een reeks getallen in R te berekenen:

 exp(mean(log(x)))

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

Voorbeeld 1: Bereken het geometrische gemiddelde van de vector

De volgende code laat zien hoe je het geometrische gemiddelde van een enkele vector in R kunt berekenen:

 #definevector
x <- c(4, 8, 9, 9, 12, 14, 17)

#calculate geometric mean of values in vector
exp(mean(log(x)))

[1] 9.579479

Voorbeeld 2: Bereken het geometrische gemiddelde van een vector met nullen

Als uw vector nullen of negatieve getallen bevat, retourneert de bovenstaande formule een 0 of een NaN.

Om nullen en negatieve getallen te negeren bij het berekenen van het geometrische gemiddelde, kunt u de volgende formule gebruiken:

 #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

Voorbeeld 3: Bereken het geometrische gemiddelde van de kolommen in het dataframe

De volgende code laat zien hoe u het geometrische gemiddelde van een kolom in een dataframe kunt berekenen:

 #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

En de volgende code laat zien hoe u het geometrische gemiddelde van meerdere kolommen in een dataframe kunt berekenen:

 #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

Aanvullende bronnen

Hoe het gemiddelde per groep in R te berekenen
Hoe een gewogen gemiddelde in R te berekenen
Hoe de standaardfout van het gemiddelde in R te berekenen

Einen Kommentar hinzufügen

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