[R-es] aplicar función de cuantilas a un dataframe

morales en us.es morales en us.es
Mar Mar 16 22:21:04 CET 2010


Hola R-adictos,

me gustaría que alguien me ayudara a aplicar la función "quantile" (varios percentiles) a un marco de datos estratificado por algunas variables categóricas (ver fichero adjunto como ejemplo). La idea es obtener varios percentiles de varias variables (primeras columnas del fichero de datos), pero dividiendo el marco de datos en función de los valores de las variables categóricas (educación y edad, las dos últimas columnas del fichero de datos).  

Lo he intentado con aggregate y este es el resultado:

example= read.table("example.txt",header=T)
aggregate(example$recall, list(example$EDUCATION,example$Age), mean)
aggregate(example$recall, list(example$EDUCATION,example$Age), quantile)

> aggregate(example$recall, list(example$EDUCATION,example$Age), quantile)
Error en aggregate.data.frame(as.data.frame(x), ...) : 
  'FUN' must always return a scalar

Tambien he intentado crear una función para aplicarla, pero este ha sido el resultado:

percen = function(x) {
quantile(x,probs = c(.05,.10,.20,.5,.6,.8,.95))
}
percen(example$recall)
aggregate(example$recall, list(example$EDUCATION,example$Age), percen)

> aggregate(example$recall, list(example$EDUCATION,example$Age), percen)
Error en aggregate.data.frame(as.data.frame(x), ...) : 
  'FUN' must always return a scalar


Alguna sugerencia? Gracias anticipadas

Manuel 






 

------------ próxima parte ------------
An embedded and charset-unspecified text was scrubbed...
Name: example.txt
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20100316/5cb898e7/attachment-0001.txt>


Más información sobre la lista de distribución R-help-es