Barras de erro padrão usando stat_summary

O código a seguir produz gráficos de barras com barras de erro padrão usando Hmisc, ddply e 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()

No entanto, implementar as funções auxiliares acima, como mean_sdl, parece muito melhor. Por exemplo, o código a seguir produz um gráfico com barras de erro de 95% do IC:

ggplot(mtcars, aes(cyl, qsec)) + 
  stat_summary(fun.y = mean, geom = "bar") + 
  stat_summary(fun.data = mean_sdl, geom = "errorbar")

Minha pergunta é como usar a implementação de stat_summary para barras de erro padrão. O problema é que para calcular SE você precisa do número de observações por condição e isso deve ser acessado no multiplicador de mean_sdl.

Como acesso essas informações no ggplot? Existe uma solução não-hacky para isso?

questionAnswers(1)

yourAnswerToTheQuestion