Как рассчитать средневзвешенное значение в R


Чтобы вычислить средневзвешенное значение в R, вы можете использовать встроенную функцию weighted.mean() , которая использует следующий синтаксис:

взвешенное.среднее (x, w)

куда:

  • x: вектор необработанных значений данных.
  • w: вектор весов

В этом руководстве показано несколько примеров использования этой функции на практике.

Пример 1: взвешенное среднее вектора

Следующий код показывает, как вычислить средневзвешенное значение для заданного вектора данных:

#define vector of data values
data <- c(3, 5, 6, 7, 8)

#define vector of weights
weights <- c(.1, .3, .3, .2, .1)

#calculate weighted mean
weighted. mean (x=data, w=weights)

[1] 5.8

Средневзвешенное значение оказывается равным 5,8 .

Пример 2. Средневзвешенное значение столбца во фрейме данных

В следующем коде показано, как вычислить средневзвешенное значение для столбца во фрейме данных, используя другой столбец в качестве весов:

#create data frame
df <- data.frame(values = c(3, 5, 6, 7, 8),
 weights = c(.1, .3, .3, .2, .1))

#calculate weighted mean
weighted. mean (x=df$values, w=df$weights)
[1] 5.8

Средневзвешенное значение оказывается равным 5,8 .

Обратите внимание, что вы также можете рассчитать средневзвешенное значение для столбца во фрейме данных, используя отдельный вектор в качестве весов:

#create data frame
df <- data.frame(values = c(3, 5, 6, 7, 8),
 other_data = c(6, 12, 14, 14, 7),
 more_data = c(3, 3, 4, 7, 9))

#define vector of weights
weights <- c(.1, .3, .3, .2, .1)

#calculate weighted mean
weighted. mean (x=df$values, w=weights)
[1] 5.8

Снова средневзвешенное значение оказывается равным 5,8 .

Когда использовать взвешенное среднее

На практике взвешенное среднее используется, когда мы считаем, что некоторые значения данных более важны, чем другие, и поэтому мы хотим, чтобы эти более важные значения вносили больший вклад в окончательное среднее значение.

Дополнительные ресурсы

Как вычислить среднее значение нескольких столбцов в R
Как рассчитать среднее значение по группе в R
Как суммировать определенные столбцы в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.