Hi,
# A dataframe example
s <- 1:20
d <- data.frame(S=rep(s, each=100), var=rnorm(n=2000, mean=0, s=1))
# Here is how I would do it with plyr
ddply(d, .(S), summarize, M=mean(var), Med=median(var), Q=matrix(quantile (var, probs=c(0.25,0.50,0.75)) ,ncol=3) )
# However the equivalent does not seem to work with dplyr, unfortunately
library(dplyr)
d %.% group_by(S) %.%
summarise(M=mean(var), Med=median(var), Q= matrix(quantile (var, probs=c(0.25, 0.50, 0.75) ), ncol=3) )
# Error: expecting a single value
Here is a workaround
d %.% group_by(S) %.%
summarise(M=mean(var), Med=median(var), Q1=quantile (var, probs=0.25), Q2=quantile (var, probs=0.50), Q3=quantile(var, probs=0.75))
Alain