Как рассчитать стандартное отклонение столбцов в R


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

#calculate standard deviation of one column
sd(df$col1)

#calculate standard deviation of all columns
sapply(df, sd)

#calculate standard deviation of specific columns
sapply(df[c('col1', 'col2', 'col5')], sd)

В следующих примерах показано, как использовать этот синтаксис на практике со следующим фреймом данных:

#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
 points=c(99, 91, 86, 88, 95),
 assists=c(33, 28, 31, 39, 34),
 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

 team points assists rebounds
1 A 99 33 30
2 B 91 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28

Пример 1: стандартное отклонение одного столбца

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

#calculate standard deviation of 'points' column
sd(df$points)

[1] 5.263079

Стандартное отклонение значений в столбце «баллы» равно 5,263079 .

Пример 2: стандартное отклонение всех столбцов

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

#calculate standard deviation of all columns in data frame
sapply(df, sd)

 team points assists rebounds 
 NA 5.263079 4.062019 2.683282 
Warning message:
In var(if (is.vector(x) || is.factor(x)) x else as.double(x), na.rm = na.rm) :
 NAs introduced by coercion

Поскольку столбец «команда» является символьной переменной, R возвращает NA и выдает нам предупреждение.

Однако он успешно вычисляет стандартное отклонение для трех других числовых столбцов.

Пример 3: Стандартное отклонение определенных столбцов

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

#calculate standard deviation of 'points' and 'rebounds' columns
sapply(df[c('points', 'rebounds')], sd)

 points rebounds 
5.263079 2.683282 

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

#calculate standard deviation of 'points' and 'rebounds' columns
sapply(df[c(2, 4)], sd)

 points rebounds 
5.263079 2.683282 

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

В следующих руководствах объясняется, как выполнять другие распространенные функции для столбцов в R:

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