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


Часто вам может потребоваться вычислить среднее значение нескольких столбцов в R. К счастью, вы можете легко сделать это с помощью функции colMeans() .

 colMeans(df)

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

Использование colMeans() для нахождения среднего значения нескольких столбцов

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

 #create data frame
df <- data.frame(var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, 9))

#find mean of each column
colMeans(df)

var1 var2 var3 var4 
 3.2 5.4 5.2 4.2 

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

 #find the mean of columns 2 and 3
colMeans(df[, c(2, 3)])

var2 var3 
 5.4 5.2 

#find the mean of the first three columns
colMeans(df[, 1:3])

var1 var2 var3 
 3.2 5.4 5.2

Если есть столбцы, которые не являются числовыми, вы можете использовать sapply() , чтобы указать, что вы хотите найти только среднее значение числовых столбцов:

 #create data frame
df <- data.frame(var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, 9),
                 var5=c('a', 'a', 'b', 'b', 'c'))

#find mean of only numeric columns
colMeans(df[ sapply (df, is.numeric)])

var1 var2 var3 var4 
 3.2 5.4 5.2 4.2

А если в каких-либо столбцах есть пропущенные значения, вы можете использовать аргумент na.rm=TRUE , чтобы игнорировать пропущенные значения при вычислении средних значений:

 #create data frame with some missing values
df <- data.frame(var1=c(1, 3, NA, NA, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 6, 8),
                 var4=c(1, 1, 2, 8, NA))

#find mean of each column and ignore missing values
colMeans(df, na.rm= TRUE )

var1 var2 var3 var4 
 3.0 5.4 5.2 3.0

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *