Вы ищете что-то подобное?
ages <- c(25,26,37,56,42,25)
affill <- factor(c("U", "R", "R","D", "D", "U"))
my_range <- function(x, na.rm = TRUE) {
max(x, na.rm = na.rm) - min(x, na.rm = na.rm)
}
tapply(ages, affill , my_range)
# D R U
# 14 11 0
Вы можете создать свою собственную пользовательскую функцию, которая вычисляет диапазон числового вектора, вместо того, чтобы возвращать диапазон по умолчанию в R.