en R, ¿cómo calcular la media de todas las columnas, por grupo?

Necesito obtener la media de todas las columnas de un gran conjunto de datos usando R, agrupadas por 2 variables.

Probémoslo con mtcars:

library(dplyr)
g_mtcars <- group_by(mtcars, cyl, gear)
summarise(g_mtcars, mean (hp))

# Source: local data frame [8 x 3]
# Groups: cyl [?]
# 
#     cyl  gear `mean(hp)`
#   <dbl> <dbl>      <dbl>
# 1     4     3    97.0000
# 2     4     4    76.0000
# 3     4     5   102.0000
# 4     6     3   107.5000
# 5     6     4   116.5000
# 6     6     5   175.0000
# 7     8     3   194.1667
# 8     8     5   299.5000

Funciona para "hp", pero necesito obtener la media para todas las demás columnas de mtcars (excepto "cyl" y "gear" que forman un grupo). El conjunto de datos es grande, con varias columnas. Escribiéndolo a mano, así:summarise(g_mtcars, mean (hp), mean(drat), mean (wt),...) No es práctico.

Respuestas a la pregunta(5)

Su respuesta a la pregunta