Un saludo a todos. Es posible que con el asunto no quede claro lo que quiero. Para eso añado una captura. Dispongo de 3 variables (dos discretas y una continua) y me interesaría sacar la media tanto del grupo como de los subgrupos. Esta creo que es la segunda vez que escribo preguntando algo parecido. En la primera me hablasteis de tapply, pero con este comando sólo sé obtener la media de una de las variables, por ejemplo la media de edad de los grupos de la variable Franja o de la variable Sexo pero no de los dos a la vez como en la tabla dinámica que acompaña a los datos en la captura. Aggregate no me queda muy claro qué es lo que hace. Espero no volver a ser de mucha molestia. Muchas gracias de antemano ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120125/2047844d/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: Captura de pantalla 2012-01-25 a la(s) 21.07.00.png Type: image/png Size: 31938 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120125/2047844d/attachment-0001.png>
Hola Jesus, Puedes obtener resultados similares utilizando ave(), aggregate(), tapply(), todos en base, o a/d/l*ply en la libreria plyr (ver [1]). Otra posibilidad es a traves de la libreria tables (ver [2]) A continuacion un ejemplo con tapply() y aggregate(): n <- 1000 sexo <- sample(c('hombre', 'mujer'), n, TRUE) franja <- sample(c('infantil', 'adulto', 'anciano'), n, TRUE) annos <- rnorm(n, 30, 15) d <- data.frame(sexo, franja, annos) with(d, aggregate(annos, list(sexo, franja), mean)) with(d, tapply(annos, list(sexo, franja), mean)) Para obtener la media global tendrias que hacer un pequeno "truco" ;-) Un saludo, Jorge.- [1] http://www.jstatsoft.org/v40/i01/paper [2] http://cran.r-project.org/web/packages/tables/index.html 2012/1/25 Jesus Armand Calejero Roman <>> Un saludo a todos. > > Es posible que con el asunto no quede claro lo que quiero. Para eso añado > una captura. > > Dispongo de 3 variables (dos discretas y una continua) y me interesaría > sacar la media tanto del grupo como de los subgrupos. Esta creo que es la > segunda vez que escribo preguntando algo parecido. En la primera me > hablasteis de tapply, pero con este comando sólo sé obtener la media de una > de las variables, por ejemplo la media de edad de los grupos de la variable > Franja o de la variable Sexo pero no de los dos a la vez como en la tabla > dinámica que acompaña a los datos en la captura. Aggregate no me queda muy > claro qué es lo que hace. > > Espero no volver a ser de mucha molestia. > > Muchas gracias de antemano > > > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120125/af8be29d/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: no disponible Type: image/png Size: 31938 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120125/af8be29d/attachment-0001.png>
Hola, Hemos respondido hace poco a una consulta parecida. Jorge comenta todas las funciones *ply y yo suelo responder con un ejemplo del paquete "sqldf"... Que con un poco de conocimiento de sql es inmediato poder utilizarlo. Ahí va el ejemplo:> library(sqldf)> > Lines <- "DeployID Date.Time LocationQuality Latitude Longitude+ STM05-1 2005/02/28 17:35 Good -35.562 177.158+ STM05-1 2005/02/28 19:44 Good -35.487 177.129+ STM05-1 2005/02/28 23:01 Unknown -35.399 177.064+ STM05-1 2005/03/01 07:28 Unknown -34.978 177.268+ STM05-1 2005/03/01 18:06 Poor -34.799 177.027+ STM05-1 2005/03/01 18:47 Poor -34.85 177.059+ STM05-2 2005/02/28 12:49 Good -35.928 177.328+ STM05-2 2005/02/28 21:23 Poor -35.926 177.314+ "> > DF <- read.table(textConnection(Lines), skip = 1, as.is = TRUE,+ col.names = c("Id", "Date", "Time", "Quality", "Lat", "Long"))> sqldf("select Quality, avg(Lat), avg(Long) from DF group by Quality") Quality avg(Lat) avg(Long)1 Good -35.65900 177.2050 2 Poor -35.19167 177.1333 3 Unknown -35.18850 177.1660> > Cuidado que sqldf trabaja sobre "data.frames" cuyo nombre no tenga un punto, por eso en el ejemplo se usa "DF". Saludos, Carlos Ortega www.qualityexcellence.es El 25 de enero de 2012 21:11, Jesus Armand Calejero Roman < ana.ismi.3isa@gmail.com> escribió:> Un saludo a todos. > > Es posible que con el asunto no quede claro lo que quiero. Para eso añado > una captura. > > Dispongo de 3 variables (dos discretas y una continua) y me interesaría > sacar la media tanto del grupo como de los subgrupos. Esta creo que es la > segunda vez que escribo preguntando algo parecido. En la primera me > hablasteis de tapply, pero con este comando sólo sé obtener la media de una > de las variables, por ejemplo la media de edad de los grupos de la variable > Franja o de la variable Sexo pero no de los dos a la vez como en la tabla > dinámica que acompaña a los datos en la captura. Aggregate no me queda muy > claro qué es lo que hace. > > Espero no volver a ser de mucha molestia. > > Muchas gracias de antemano > > > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]
Hola Carlos y demás colegas he tratado de hacer esto que describes aquí pero no he podido porque no tengo el paquete sqldf instalado, he tratado de instalarlo pero no he podido, no encuentro la forma de llegar al Cran mediante un proxy, también lo he bajado manualmente y he tratado de instalarlo desde la Opción que da Rstudio y tampoco he podido. Mi sistema operativo es Ubuntu 11.10 Alguien puede explicarme como hacerlo. Un abrazo a todos Leonardo On 25/01/12 17:23, Carlos Ortega wrote:> Hola, > > Hemos respondido hace poco a una consulta parecida. > Jorge comenta todas las funciones *ply y yo suelo responder con un ejemplo > del paquete "sqldf"... > Que con un poco de conocimiento de sql es inmediato poder utilizarlo. > > Ahí va el ejemplo: > >> library(sqldf)> > Lines<- "DeployID Date.Time LocationQuality Latitude Longitude+ STM05-1 2005/02/28 17:35 Good -35.562 177.158+ STM05-1 2005/02/28 19:44 Good -35.487 177.129+ STM05-1 2005/02/28 23:01 Unknown -35.399 177.064+ STM05-1 2005/03/01 07:28 Unknown -34.978 177.268+ STM05-1 2005/03/01 18:06 Poor -34.799 177.027+ STM05-1 2005/03/01 18:47 Poor -34.85 177.059+ STM05-2 2005/02/28 12:49 Good -35.928 177.328+ STM05-2 2005/02/28 21:23 Poor -35.926 177.314+ "> > DF<- read.table(textConnection(Lines), skip = 1, as.is = TRUE,+ col.names = c("Id", "Date", "Time", "Quality", "Lat", "Long"))> sqldf("select Quality, avg(Lat), avg(Long) from DF group by Quality") Quality avg(Lat) avg(Long) > 1 Good -35.65900 177.2050 > 2 Poor -35.19167 177.1333 > 3 Unknown -35.18850 177.1660> > > > > Cuidado que sqldf trabaja sobre "data.frames" cuyo nombre no tenga un > punto, por eso en el ejemplo se usa "DF". > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > El 25 de enero de 2012 21:11, Jesus Armand Calejero Roman< > ana.ismi.3isa en gmail.com> escribió: > >> Un saludo a todos. >> >> Es posible que con el asunto no quede claro lo que quiero. Para eso añado >> una captura. >> >> Dispongo de 3 variables (dos discretas y una continua) y me interesaría >> sacar la media tanto del grupo como de los subgrupos. Esta creo que es la >> segunda vez que escribo preguntando algo parecido. En la primera me >> hablasteis de tapply, pero con este comando sólo sé obtener la media de una >> de las variables, por ejemplo la media de edad de los grupos de la variable >> Franja o de la variable Sexo pero no de los dos a la vez como en la tabla >> dinámica que acompaña a los datos en la captura. Aggregate no me queda muy >> claro qué es lo que hace. >> >> Espero no volver a ser de mucha molestia. >> >> Muchas gracias de antemano >> >> >> >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> >> > [[alternative HTML version deleted]] > > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > --- > This message was processed by Kaspersky Mail Gateway 5.6.28/RELEASE running at host imx2.etecsa.cu > Visit our web-site:<http://www.kaspersky.com>,<http://www.viruslist.com>------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120127/38755ed8/attachment.html> ------------ próxima parte ------------ An embedded and charset-unspecified text was scrubbed... Name: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120127/38755ed8/attachment.pl>
Hola, ¿No puedes instalarlo desde R-Studio teniendo en local un fichero zip? ¿Has probado a hacer lo mismo directamente desde R, instalar un paquete a partir de un zip que te has bajado a tu disco? ¿Qué error te da en estos dos casos? Saludos, Carlos Ortega www.qualityexcellence.es El 27 de enero de 2012 17:55, Leonardo Hernández Pérez < leonardo.hernandez@etecsa.cu> escribió:> Hola Carlos y demás colegas he tratado de hacer esto que describes aquí > pero no he podido porque no tengo el paquete sqldf instalado, he tratado de > instalarlo pero no he podido, no encuentro la forma de llegar al Cran > mediante un proxy, también lo he bajado manualmente y he tratado de > instalarlo desde la Opción que da Rstudio y tampoco he podido. Mi sistema > operativo es Ubuntu 11.10 > > Alguien puede explicarme como hacerlo. > > Un abrazo a todos > > Leonardo > > > On 25/01/12 17:23, Carlos Ortega wrote: > > Hola, > > Hemos respondido hace poco a una consulta parecida. > Jorge comenta todas las funciones *ply y yo suelo responder con un ejemplo > del paquete "sqldf"... > Que con un poco de conocimiento de sql es inmediato poder utilizarlo. > > Ahí va el ejemplo: > > > library(sqldf)> > Lines <- "DeployID Date.Time LocationQuality Latitude Longitude+ STM05-1 2005/02/28 17:35 Good -35.562 177.158+ STM05-1 2005/02/28 19:44 Good -35.487 177.129+ STM05-1 2005/02/28 23:01 Unknown -35.399 177.064+ STM05-1 2005/03/01 07:28 Unknown -34.978 177.268+ STM05-1 2005/03/01 18:06 Poor -34.799 177.027+ STM05-1 2005/03/01 18:47 Poor -34.85 177.059+ STM05-2 2005/02/28 12:49 Good -35.928 177.328+ STM05-2 2005/02/28 21:23 Poor -35.926 177.314+ "> > DF <- read.table(textConnection(Lines), skip = 1, as.is = TRUE,+ col.names = c("Id", "Date", "Time", "Quality", "Lat", "Long"))> sqldf("select Quality, avg(Lat), avg(Long) from DF group by Quality") Quality avg(Lat) avg(Long) > > 1 Good -35.65900 177.2050 > 2 Poor -35.19167 177.1333 > 3 Unknown -35.18850 177.1660> > > > > Cuidado que sqldf trabaja sobre "data.frames" cuyo nombre no tenga un > punto, por eso en el ejemplo se usa "DF". > > Saludos, > Carlos Ortegawww.qualityexcellence.es > > > El 25 de enero de 2012 21:11, Jesus Armand Calejero Roman <ana.ismi.3isa@gmail.com> escribió: > > > Un saludo a todos. > > Es posible que con el asunto no quede claro lo que quiero. Para eso añado > una captura. > > Dispongo de 3 variables (dos discretas y una continua) y me interesaría > sacar la media tanto del grupo como de los subgrupos. Esta creo que es la > segunda vez que escribo preguntando algo parecido. En la primera me > hablasteis de tapply, pero con este comando sólo sé obtener la media de una > de las variables, por ejemplo la media de edad de los grupos de la variable > Franja o de la variable Sexo pero no de los dos a la vez como en la tabla > dinámica que acompaña a los datos en la captura. Aggregate no me queda muy > claro qué es lo que hace. > > Espero no volver a ser de mucha molestia. > > Muchas gracias de antemano > > > > > _______________________________________________ > R-help-es mailing listR-help-es@r-project.orghttps://stat.ethz.ch/mailman/listinfo/r-help-es > > [[alternative HTML version deleted]] > > > > > _______________________________________________ > R-help-es mailing listR-help-es@r-project.orghttps://stat.ethz.ch/mailman/listinfo/r-help-es > > > > --- > This message was processed by Kaspersky Mail Gateway 5.6.28/RELEASE running at host imx2.etecsa.cu > Visit our web-site: <http://www.kaspersky.com> <http://www.kaspersky.com>, <http://www.viruslist.com> <http://www.viruslist.com> > > > > --- > This message was processed by Kaspersky Mail Gateway 5.6.28/RELEASE > running at host imx2.etecsa.cu > Visit our web-site: <http://www.kaspersky.com>, <http://www.viruslist.com> > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]