[R-es] Borrar cada fila 400

Carlos Ortega cof en qualityexcellence.es
Mar Nov 17 16:45:03 CET 2015


Hola,

Esta es una forma:

> DF <- data.frame(a=rnorm(1000))
> DF$new <- 1 +  floor(1:nrow(DF) / 400)
> unique(DF$new)
[1] 1 2 3


Saludos,
Carlos Ortega
www.qualityexcellence.es


El 17 de noviembre de 2015, 15:50, Jesús Para Fernández <
j.para.fernandez en hotmail.com> escribió:

> Entiendo la logica pero no veo el como hacerlo.
>
> No se como implementar el 1+floor(1:nrow(datos)/400))
>
> Gracias
> Jesús
>
> > Date: Tue, 17 Nov 2015 15:31:39 +0100
> > Subject: Re: [R-es] Borrar cada fila 400
> > From: cgb en datanalytics.com
> > To: j.para.fernandez en hotmail.com
> > CC: josea.bartolome en mineco.es; r-help-es en r-project.org
> >
> > 1 +  floor(1:nrow(datos) / 400)
> >
> > Pura aritmética, de nuevo.
> >
> > Un saludo,
> >
> > Carlos J. Gil Bellosta
> > http://www.datanalytics.com
> >
> > El día 17 de noviembre de 2015, 15:28, Jesús Para Fernández
> > <j.para.fernandez en hotmail.com> escribió:
> > > Gracuas a todos!!!
> > >
> > > Por cierto, esta ya es de nota. Si quiero agregar una columna, y que
> cada 400 piezsa el valor se incremente en una unidad, es decir las 400
> primeras, tendrian cada fila el valor 1. Las siguientes 400, 2, ....
> > >
> > > Lo he hecho con un for, pero va bastante lento:
> > > k<-1
> > > for(i in 1:length(datos[,1])){
> > >
> > > if(i%%400 == 0){k = k +1}
> > > datos[i,9] <- k;
> > >
> > > }
> > >
> > >
> > >> From: josea.bartolome en mineco.es
> > >> To: j.para.fernandez en hotmail.com; r-help-es en r-project.org
> > >> Subject: RE: [R-es] Borrar cada fila 400
> > >> Date: Tue, 17 Nov 2015 14:22:14 +0000
> > >>
> > >> Prueba con:
> > >>
> > >> Datos[-seq(from = 400, to=50000, by = 400), ]
> > >>
> > >> No necesitas un buche, para eliminar las filas.
> > >>
> > >> Un cordial saludo.
> > >>
> > >> -----Mensaje original-----
> > >> De: R-help-es [mailto:r-help-es-bounces en r-project.org] En nombre de
> Jesús Para Fernández
> > >> Enviado el: Tuesday, November 17, 2015 3:15 PM
> > >> Para: r-help-es en r-project.org
> > >> Asunto: [R-es] Borrar cada fila 400
> > >>
> > >> Buenas, tengo un csv [csv final] con 50000 filas, que es uni�n de
> varios csv [csv particular].
> > >>
> > >> Cada csv [csv particular] tiene en la �ltima fila, la 400, una serie
> de valores que quiero eliminar, por lo que del [csv filan] quiero borrar la
> linea 400,800,1200,....
> > >>
> > >>
> > >> Lo he intentado con un bucle for:
> > >>
> > >> for(i in 1:50000){
> > >> if(i%%400 == 0) {datos[-i,]}
> > >> }
> > >>
> > >>
> > >> Pero no me funciona. Adem�s me han dicho que con apply puede ser
> mucho m�s eficiente el algoritmo. �Alguna idea?
> > >>
> > >> Gracias
> > >>
> > >>
> > >>       [[alternative HTML version deleted]]
> > >>
> > >
> > >         [[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
>
>         [[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
>



-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]



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