В tidyverse
мы можем преобразовать в «длинный» формат, затем сгруппировать по «имени», чтобы получить mean
и var
iance в виде summarise
d в двух столбцах
library(dplyr)
library(tidyr)
library(tibble)
mtcars %>%
rownames_to_column('model') %>%
pivot_longer(cols = -model) %>%
group_by(name) %>%
summarise(Mean = mean(value), Var = var(value))
Или другой вариант: summarise_if
mtcars %>%
rownames_to_column('model') %>%
summarise_if(is.numeric, list(Mean = mean, Var = var)) %>%
pivot_longer(cols = everything())
Или с colMeans
и matrixStats::colVars
colMeans(mtcars[-1])
matrixStats::colVars(as.matrix(mtcars[-1]))