Для данных, которые немного похожи на это:
data <- data.frame(
fruit = rep(c("orange", "pear", "plum"), each = 10),
value = rnorm(30)
)
Вы можете использовать tapply
для получения статистики по фруктам и sapply
для циклического перебора функций.
fns <- c("mean", "sd")
stats <- sapply(fns, function(f) with(data, tapply(value, fruit, f)))
(Если некоторые из ваших функций не возвращают одиночные числа, используйте lapply
вместо sapply
.)