neo
2013-Jul-12 21:06 UTC
[R-es] Eliminar filas que cumplen con mas de un criterios simultaneamente ...
Estimada comunidad, tengo el siguiente problema: Un data.frame con muchas filas de las que debo eliminar aquellas que cumplen varios criterios al mismo tiempo. Por ejemplo este data.frame: sol con dia NCar NIns isom area rep tipo 1 con 0.001 1 160s 0 s 6.083543e-01 1 2 con 0.001 1 161c 1 c 1.391274e-03 1 <NA> 3 con 0.001 1 161c 1 c 2.812804e-03 1 <NA> 4 con 0.001 1 180s 0 s 3.791027e-01 1 <NA> 619 lim 0.003 2 160s 0 s 5.723237e-01 1 <NA> 620 lim 0.003 2 161t 1 t 1.096077e-02 1 <NA> 621 lim 0.003 2 161c 1 c 3.896926e-03 1 <NA> 630 lim 0.003 2 190s 0 s 1.340253e-02 1 <NA> 631 lim 0.003 2 190s 0 s 9.274320e-03 1 <NA> 632 lim 0.003 3 160s 0 s 6.527778e-01 1 <NA> 633 lim 0.003 3 180s 0 s 3.211201e-01 1 <NA> 634 lim 0.003 3 181c 1 c 2.610209e-02 1 <NA> 635 lim 0.003 4 160s 0 s 6.080091e-01 1 <NA> 636 lim 0.003 4 161c 1 c 1.739469e-03 1 <NA> 642 lim 0.003 5 160s 0 s 6.085502e-01 1 <NA> 609 dol 1.573 5 182i 2 i 1.479901e-03 2 <NA> 610 dol 1.573 5 182i 2 i 2.343052e-03 2 <NA> 611 dol 1.573 5 182i 2 i 3.179129e-03 2 <NA> 612 dol 1.573 4 160s 0 s 6.663188e-01 3 <NA> 613 dol 1.573 4 161c 1 c 9.283267e-04 3 <NA> 614 dol 1.573 4 161c 1 c 1.239676e-03 3 <NA> Tengo que eliminar las filas cuya columna SOL dice LIM y cuya columna DIA dice 2. Por supuesto he googleado (o duckduckdeado ahora) e intentado algunas opciones como la siguiente (suponiendo que el archivo se llama graph): graph <- graph[graph$sol=="lim" & graph$dia==2,] pero esto elimina TODAS las filas que cumplen ambos criterios, es decir, la union de ambos criterios y no su interseccion, que es lo que necesito. He visto otras ideas en internet, pero son demasiado complicadas para hacer algo tan simple, ademas no me han funcionado, y pienso que debe haber un metodo simple. Alguna idea por favor ? Saludos y muchas gracias por su tiempo, ERIC.
Freddy Omar López Quintero
2013-Jul-12 21:20 UTC
[R-es] Eliminar filas que cumplen con mas de un criterios simultaneamente ...
Hola.> Tengo que eliminar las filas cuya columna SOL dice LIM y cuya columna > DIA dice 2. >Prueba con:>library(sqldf) >graph<-sqldf("select * from graph where sol='lim' and dia=2") sol con dia NCar NIns isom area rep tipo 1 lim 0.003 2 160s 0 s 0.572323700 1 <NA> 2 lim 0.003 2 161t 1 t 0.010960770 1 <NA> 3 lim 0.003 2 161c 1 c 0.003896926 1 <NA> 4 lim 0.003 2 190s 0 s 0.013402530 1 <NA> 5 lim 0.003 2 190s 0 s 0.009274320 1 <NA> Saludos. -- «But Gwindor answered: 'The doom lies in yourself, not in your name.'» JRR Tolkien [[alternative HTML version deleted]]
Freddy Omar López Quintero
2013-Jul-12 21:22 UTC
[R-es] Eliminar filas que cumplen con mas de un criterios simultaneamente ...
Hola de nuevo. Leí mal. Si vas a eliminar esas filas, entonces usa: sqldf("select * from graph where sol!='lim' and dia!=2") En el correo anterior seleccioné precisamente a esas descartando a las demás. Culpa de mis anteojos... jeje. On Fri, Jul 12, 2013 at 5:20 PM, Freddy Omar López Quintero < freddy.vate01@gmail.com> wrote:> Hola. > > >> Tengo que eliminar las filas cuya columna SOL dice LIM y cuya columna >> DIA dice 2. >> > > Prueba con: > > >library(sqldf) > >graph<-sqldf("select * from graph where sol='lim' and dia=2") > > sol con dia NCar NIns isom area rep tipo > 1 lim 0.003 2 160s 0 s 0.572323700 1 <NA> > 2 lim 0.003 2 161t 1 t 0.010960770 1 <NA> > 3 lim 0.003 2 161c 1 c 0.003896926 1 <NA> > 4 lim 0.003 2 190s 0 s 0.013402530 1 <NA> > 5 lim 0.003 2 190s 0 s 0.009274320 1 <NA> > > > Saludos. > > > -- > «But Gwindor answered: 'The doom lies in yourself, not in your name.'» > > JRR Tolkien >-- «But Gwindor answered: 'The doom lies in yourself, not in your name.'» JRR Tolkien [[alternative HTML version deleted]]
Jorge I Velez
2013-Jul-12 21:22 UTC
[R-es] Eliminar filas que cumplen con mas de un criterios simultaneamente ...
?subset 2013/7/13 neo <ericconchamunoz@gmail.com>> Estimada comunidad, tengo el siguiente problema: > > Un data.frame con muchas filas de las que debo eliminar aquellas que > cumplen varios criterios al mismo tiempo. Por ejemplo este data.frame: > > > sol con dia NCar NIns isom area rep tipo > 1 con 0.001 1 160s 0 s 6.083543e-01 1 > 2 con 0.001 1 161c 1 c 1.391274e-03 1 <NA> > 3 con 0.001 1 161c 1 c 2.812804e-03 1 <NA> > 4 con 0.001 1 180s 0 s 3.791027e-01 1 <NA> > 619 lim 0.003 2 160s 0 s 5.723237e-01 1 <NA> > 620 lim 0.003 2 161t 1 t 1.096077e-02 1 <NA> > 621 lim 0.003 2 161c 1 c 3.896926e-03 1 <NA> > 630 lim 0.003 2 190s 0 s 1.340253e-02 1 <NA> > 631 lim 0.003 2 190s 0 s 9.274320e-03 1 <NA> > 632 lim 0.003 3 160s 0 s 6.527778e-01 1 <NA> > 633 lim 0.003 3 180s 0 s 3.211201e-01 1 <NA> > 634 lim 0.003 3 181c 1 c 2.610209e-02 1 <NA> > 635 lim 0.003 4 160s 0 s 6.080091e-01 1 <NA> > 636 lim 0.003 4 161c 1 c 1.739469e-03 1 <NA> > 642 lim 0.003 5 160s 0 s 6.085502e-01 1 <NA> > 609 dol 1.573 5 182i 2 i 1.479901e-03 2 <NA> > 610 dol 1.573 5 182i 2 i 2.343052e-03 2 <NA> > 611 dol 1.573 5 182i 2 i 3.179129e-03 2 <NA> > 612 dol 1.573 4 160s 0 s 6.663188e-01 3 <NA> > 613 dol 1.573 4 161c 1 c 9.283267e-04 3 <NA> > 614 dol 1.573 4 161c 1 c 1.239676e-03 3 <NA> > > > > Tengo que eliminar las filas cuya columna SOL dice LIM y cuya columna > DIA dice 2. > > Por supuesto he googleado (o duckduckdeado ahora) e intentado algunas > opciones como la siguiente (suponiendo que el archivo se llama graph): > > graph <- graph[graph$sol=="lim" & graph$dia==2,] > > > pero esto elimina TODAS las filas que cumplen ambos criterios, es decir, > la union de ambos criterios y no su interseccion, que es lo que necesito. > > He visto otras ideas en internet, pero son demasiado complicadas para > hacer algo tan simple, ademas no me han funcionado, y pienso que debe > haber un metodo simple. > > Alguna idea por favor ? > > Saludos y muchas gracias por su tiempo, > > ERIC. > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >[[alternative HTML version deleted]]
Seemingly Similar Threads
- Eliminar filas que cumplen con mas de un criterios simultaneamente ...
- Eliminar filas que cumplen con mas de un criterios simultaneamente ...
- Eliminar filas que cumplen con mas de un criterios simultaneamente ...
- Problema con filtros de datos en un data.frame
- Duda básica