Как рассчитать усеченное среднее в R (с примерами)


Усеченное среднее — это среднее значение набора данных, рассчитанное после удаления определенного процента наименьших и наибольших значений из набора данных.

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

Самый простой способ вычислить усеченное среднее значение в R — использовать следующий базовый синтаксис:

#calculate 10% trimmed mean
mean(x, trim= 0.1 )

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

Пример 1. Вычисление усеченного среднего вектора

В следующем коде показано, как вычислить 10% усеченное среднее значение для вектора данных:

#define data
data = c(22, 25, 29, 11, 14, 18, 13, 13, 17, 11, 8, 8, 7, 12, 15, 6, 8, 7, 9, 12)

#calculate 10% trimmed mean
mean(data, trim= 0.1 )

[1] 12.375

Среднее значение, усеченное на 10%, составляет 12,375 .

Это среднее значение набора данных после удаления наименьших 10 % и наибольших 10 % значений из набора данных.

Пример 2. Вычисление усеченного среднего значения столбца во фрейме данных

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

#create data frame
df = data.frame(points=c(25, 12, 15, 14, 19, 23, 25, 29),
 assists=c(5, 7, 7, 9, 12, 9, 9, 4),
 rebounds=c(11, 8, 10, 6, 6, 5, 9, 12))

#calculate 5% trimmed mean of points
mean(df$points, trim= 0.05 )

[1] 20.25

Усеченное на 5% среднее значений в столбце «баллы» равно 20,25 .

Это среднее значение столбца «баллы» после удаления наименьших 5 % и наибольших 5 % значений.

Пример 3. Вычисление усеченного среднего значения нескольких столбцов

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

#create data frame
df = data.frame(points=c(25, 12, 15, 14, 19, 23, 25, 29),
 assists=c(5, 7, 7, 9, 12, 9, 9, 4),
 rebounds=c(11, 8, 10, 6, 6, 5, 9, 12))

#calculate 5% trimmed mean of points and assists
sapply(df[c('points', 'assists')], function (x) mean(x, trim= 0.05 ))

 points assists 
 20.25 7.75

Из вывода мы видим:

  • Усеченное на 5% среднее значение столбца «баллы» равно 20,25 .
  • Усеченное на 5% среднее значение столбца «ассисты» составляет 7,75 .

Связанный: Руководство по apply(), lapply(), sapply() и tapply() в R

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

Как рассчитать усеченное среднее вручную
Калькулятор усеченного среднего

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