Já aprendemos como somar e agrupar os dados no SAS aqui, no R isso é tão simples quanto, basta você utilizar a função tapply(). A função é composta basicamente de três elementos: o vetor contendo valores, o campo que será utilizado no agrupamento e a função que será aplicada. Veja o exemplo abaixo:
# calcula a media de mpg agrupando por cyl tapply(mtcars$mpg, mtcars$cyl, mean); # calcula a mediana de mpg agrupando por cyl tapply(mtcars$mpg, mtcars$cyl, median);
Ou seja, para carros contendo 4 cilindros, temos que a média da quantidade de milhas por galão é de 26.66364, enquanto que a mediana é de 26.0. Você pode substituir mean e median acima por diversas funções como soma (sum), máximo(max), mínimo(min), desvio padrão(sd), variância(var), principais quantis(quantile) e dispersão(range).
Leia também o post Demonstrando dados com a função aggregate no R
E aqui você encontra um excelente material complementar em inglês: R Function of the Day: tapply