Как вычислить среднее геометрическое в r (с примерами)
Вы можете использовать следующий синтаксис для вычисления среднего геометрического набора чисел в R:
exp(mean(log(x)))
Следующие примеры показывают, как использовать эту функцию на практике.
Пример 1: Вычислить среднее геометрическое вектора
Следующий код показывает, как вычислить среднее геометрическое одного вектора в 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
Пример 2. Вычисление среднего геометрического вектора с нулями.
Если ваш вектор содержит нули или отрицательные числа, приведенная выше формула вернет 0 или NaN.
Чтобы игнорировать нули и отрицательные числа при вычислении среднего геометрического, можно использовать следующую формулу:
#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
Пример 3. Вычисление среднего геометрического столбцов во фрейме данных.
Следующий код показывает, как вычислить среднее геометрическое столбца во фрейме данных:
#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
Следующий код показывает, как вычислить среднее геометрическое нескольких столбцов во фрейме данных:
#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
Дополнительные ресурсы
Как рассчитать среднее значение на группу в R
Как рассчитать средневзвешенное значение в R
Как рассчитать стандартную ошибку среднего значения в R