Barras de error estándar utilizando stat_summary
El siguiente código produce gráficos de barras con barras de error estándar que utilizan Hmisc, ddply y ggplot:
means_se <- ddply(mtcars,.(cyl),
function(df) smean.sdl(df$qsec,mult=sqrt(length(df$qsec))^-1))
colnames(means_se) <- c("cyl","mean","lower","upper")
ggplot(means_se,aes(cyl,mean,ymax=upper,ymin=lower,group=1)) +
geom_bar(stat="identity") +
geom_errorbar()
Sin embargo, la implementación de las funciones de ayuda anteriores, como mean_sdl, parece mucho mejor. Por ejemplo, el siguiente código produce un gráfico con barras de error de IC del 95%:
ggplot(mtcars, aes(cyl, qsec)) +
stat_summary(fun.y = mean, geom = "bar") +
stat_summary(fun.data = mean_sdl, geom = "errorbar")
Mi pregunta es cómo usar la implementación stat_summary para las barras de error estándar. El problema es que para calcular la SE se necesita el número de observaciones por condición y esto se debe acceder en el multiplicador de mean_sdl.
¿Cómo accedo a esta información dentro de ggplot? ¿Hay una solución no hacky para esto?