Francisco Javier
2014-Mar-06 09:46 UTC
[R-es] Identificar pares de valores en distintas filas
Hola a todos, soy nuevo en el foro, y mi pregunta es: Dado un data frame com puesto por 3 columnas: ID: Identificador individuo FECHA: Fecha de actuación, en formato dd/mm/yy VALOR: Score numérico ¿Hay algún paquete para obtener aquellos grupos ID del data frame que tengan igual par (FECHA, VALOR)? Ejemplo: ID FECHA VALOR 1 01/04/1965 25578 2 01/09/1988 23456 3 01/04/2004 76578 4 01/04/1965 25578 5 01/05/1992 33724 6 01/04/1965 65789 7 01/09/1988 23456 El resultado en este caso sería el data frame (ó la matriz): 1 4 2 7 Muchas gracias por vuestra ayuda. [[alternative HTML version deleted]]
Carlos J. Gil Bellosta
2014-Mar-06 11:13 UTC
[R-es] Identificar pares de valores en distintas filas
Hola, ¿qué tal? Puedes probar algo así: ######################################### library(plyr) n <- 100 dat <- data.frame( id = 1:n, a = rpois(n, lambda = 3), b = rpois(n, lambda = 5) ) dlply(dat, .(a,b), function(x) x$id) ######################################### Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com El día 6 de marzo de 2014, 10:46, Francisco Javier <iterador10 en hotmail.com> escribió:> Hola a todos, soy nuevo en el foro, y mi pregunta es: > > > > Dado un data frame com puesto por 3 columnas: > > > > > > ID: Identificador individuo > > FECHA: Fecha de actuación, en formato dd/mm/yy > > VALOR: Score numérico > > > > ¿Hay algún paquete para obtener aquellos grupos ID del data frame que tengan igual par (FECHA, VALOR)? > > Ejemplo: > > > > > > > > > > ID > FECHA > VALOR > > 1 > 01/04/1965 > 25578 > > 2 > 01/09/1988 > 23456 > > 3 > 01/04/2004 > 76578 > > 4 > 01/04/1965 > 25578 > > 5 > 01/05/1992 > 33724 > > 6 > 01/04/1965 > 65789 > > 7 > 01/09/1988 > 23456 > > > > El resultado en este caso sería el data frame (ó la matriz): > > > > 1 4 > > 2 7 > > > > Muchas gracias por vuestra ayuda. > > [[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 >
Isidro Hidalgo
2014-Mar-06 11:37 UTC
[R-es] Identificar pares de valores en distintas filas
Creo que no te hace falta ningún paquete para eso. Prueba con esto, a ver si te sirve: tabla <- table(NombreDelDataFrame$FECHA, NombreDelDataFrame$VALOR) repetidos <- which(tabla>1) expand.grid(row.names(tabla), colnames(tabla))[repetidos,] Un saludo, Isidro Hidalgo Arellano Observatorio Regional de Empleo Consejería de Empleo y Economía http://www.jccm.es> -----Mensaje original----- > De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > project.org] En nombre de Francisco Javier > Enviado el: jueves, 06 de marzo de 2014 10:47 > Para: r-help-es en r-project.org > Asunto: [R-es] Identificar pares de valores en distintas filas > > Hola a todos, soy nuevo en el foro, y mi pregunta es: > > > > Dado un data frame com puesto por 3 columnas: > > > > > > ID: Identificador individuo > > FECHA: Fecha de actuación, en formato dd/mm/yy > > VALOR: Score numérico > > > > ¿Hay algún paquete para obtener aquellos grupos ID del data frame que > tengan igual par (FECHA, VALOR)? > > Ejemplo: > > > > > > > > > > ID > FECHA > VALOR > > 1 > 01/04/1965 > 25578 > > 2 > 01/09/1988 > 23456 > > 3 > 01/04/2004 > 76578 > > 4 > 01/04/1965 > 25578 > > 5 > 01/05/1992 > 33724 > > 6 > 01/04/1965 > 65789 > > 7 > 01/09/1988 > 23456 > > > > El resultado en este caso sería el data frame (ó la matriz): > > > > 1 4 > > 2 7 > > > > Muchas gracias por vuestra ayuda. > > [[alternative HTML version deleted]]
Isidro Hidalgo
2014-Mar-06 11:41 UTC
[R-es] Identificar pares de valores en distintas filas
No había visto que te habían contestado ya :) Saludos...> -----Mensaje original----- > De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r- > project.org] En nombre de Carlos J. Gil Bellosta > Enviado el: jueves, 06 de marzo de 2014 12:14 > Para: Francisco Javier > CC: r-help-es en r-project.org > Asunto: Re: [R-es] Identificar pares de valores en distintas filas > > Hola, ¿qué tal? > > Puedes probar algo así: > > ######################################### > library(plyr) > > n <- 100 > > dat <- data.frame( id = 1:n, a = rpois(n, lambda = 3), b = rpois(n, > lambda = 5) ) > > dlply(dat, .(a,b), function(x) x$id) > > ######################################### > > Un saludo, > > Carlos J. Gil Bellosta > http://www.datanalytics.com > > El día 6 de marzo de 2014, 10:46, Francisco Javier > <iterador10 en hotmail.com> escribió: > > Hola a todos, soy nuevo en el foro, y mi pregunta es: > > > > > > > > Dado un data frame com puesto por 3 columnas: > > > > > > > > > > > > ID: Identificador individuo > > > > FECHA: Fecha de actuación, en formato dd/mm/yy > > > > VALOR: Score numérico > > > > > > > > ¿Hay algún paquete para obtener aquellos grupos ID del data frame que > tengan igual par (FECHA, VALOR)? > > > > Ejemplo: > > > > > > > > > > > > > > > > > > > > ID > > FECHA > > VALOR > > > > 1 > > 01/04/1965 > > 25578 > > > > 2 > > 01/09/1988 > > 23456 > > > > 3 > > 01/04/2004 > > 76578 > > > > 4 > > 01/04/1965 > > 25578 > > > > 5 > > 01/05/1992 > > 33724 > > > > 6 > > 01/04/1965 > > 65789 > > > > 7 > > 01/09/1988 > > 23456 > > > > > > > > El resultado en este caso sería el data frame (ó la matriz): > > > > > > > > 1 4 > > > > 2 7 > > > > > > > > Muchas gracias por vuestra ayuda. > > > > [[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 > > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es
"Marcuzzi, Javier Rubén"
2014-Mar-06 14:43 UTC
[R-es] Identificar pares de valores en distintas filas
Estimado Francisco Javier La respuesta es si y varias alternativas, incluso sqldf si es que prefiere sql antes que formas de R. Pero su problema es que tendría que leer nuevamente algún material sobre R, si le es complicado al inicio puede utilizar Rcmdr. Es preferible que invierta más tiempo estudiando con R que escribir código malo, perdería tiempo y se desilusionaría de R. Javier Marcuzzi El 06/03/14 06:46, Francisco Javier escribió:> Hola a todos, soy nuevo en el foro, y mi pregunta es: > > > > Dado un data frame com puesto por 3 columnas: > > > > > > ID: Identificador individuo > > FECHA: Fecha de actuación, en formato dd/mm/yy > > VALOR: Score numérico > > > > ¿Hay algún paquete para obtener aquellos grupos ID del data frame que tengan igual par (FECHA, VALOR)? > > Ejemplo: > > > > > > > > > > ID > FECHA > VALOR > > 1 > 01/04/1965 > 25578 > > 2 > 01/09/1988 > 23456 > > 3 > 01/04/2004 > 76578 > > 4 > 01/04/1965 > 25578 > > 5 > 01/05/1992 > 33724 > > 6 > 01/04/1965 > 65789 > > 7 > 01/09/1988 > 23456 > > > > El resultado en este caso sería el data frame (ó la matriz): > > > > 1 4 > > 2 7 > > > > Muchas gracias por vuestra ayuda. > > [[alternative HTML version deleted]] > > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es[[alternative HTML version deleted]]
Francisco Javier
2014-Mar-07 13:39 UTC
[R-es] Identificar pares de valores en distintas filas
Muchas gracias a todos por vuestras respuestas! Me han sido de gran ayuda. Carlos, tienes toda la razón con el tema de que podría haber casos triplicados (de hecho los hay). Se me ocurre como solución "para salir del apuro" aplicar un intersect. Muchas gracias. Fco. Javier [[alternative HTML version deleted]]