Это можно сделать с group_by
и summarize
из dplyr
. Сначала вы должны создать «группы», переменные, которые будут использоваться для группировки данных.
library(dplyr)
dta <- data.frame(temp = rnorm(60, 0, 1))
dta$group <- sort(rep(1:12, 60/12))
dta %>% group_by(group) %>% summarize(mean_temp = mean(temp))
Результат
# A tibble: 12 x 2
group mean_temp
<int> <dbl>
1 1 -0.582
2 2 0.490
3 3 -0.197