[R-es] Problema al eliminar filas desde un data.frame dentro de un ciclo for ...

Guillermo.Vinue en uv.es Guillermo.Vinue en uv.es
Jue Ene 12 16:07:51 CET 2012


Hola Eric, suponiendo que el data.frame se llame dat, creo que lo
siguiente te serviría:

dat[dat[,5] != 10000,]

Un saludo,

Guillermo

> Estimada comunidad tengo el siguiente problema:
> 
> Tengo un data.frame con 5 columnas y 10.000 filas, tengo que eliminar
todas
> las filas cuyo valor de la 5a columna sea 10.000 ... trato de hacer esto
> dentro de un ciclo for con el siguiente codigo:
> 
> j <- 10000
> for (i in 1:j)
> {
>     if (dat12.23hex34_75_1col5[[i]]==10000)
>     {
>     dat12.23hex34_75_1col5 <- dat12.23hex34_75_1col5[[-i]]
>     i <- i-1
>     j <- j-1
>     }
> }
> 
> y obtengo el siguiente error:
> 
> Error in dat12.23hex34_75_1col5[[-i]] :
>   attempt to select more than one element
> 
> 
> la verdad es que nunca he hecho un ciclo for que me funciones, ni se bien
> como tratar los data.frame dentro de un ciclo for, por lo que no se bien
> que significa el error que obtengo ... he googleado obviamente, pero no
> encuentro observaciones que me conduzcan a una solucion de mi problema .. .
> quiza puede haber otra forma en R de hacer esto ...
> 
> alguna sugerencia por favor??
> 
> Muchas gracias a todos por su tiempo,
> 
> Eric.
> 
> 
> 
> 
> 
> -- 
> Nota: las tildes se han omitido para evitar conflictos con algunos
lectores
> de correo.
> 
> * Un economista es un experto que sabrá mañana por qué las cosas que
predijo
> ayer no han sucedido hoy (Laurence Peter).
> 
> * SATYÂT NÂSTI PARO DHARMAH
> 
> 	[[alternative HTML version deleted]]
> 
> 



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