Buen día amigos, Tengo una tabla con registros de datos por día y quisiera convertirla en horas, es decir, repetir una fila 24 veces. Lo puedo hacer manualmente pero es un registro de 5 años y tardaría una eternidad. ¿Saben cual es método más rápido? De antemano muchas gracias. Atte. Marco. [[alternative HTML version deleted]]
Estimado Creo que se equivoca, porque ¿Qué hace con las columnas?, luego dice que tiene 5 años ¿Qué hace con el bisiesto/s?. Yo lo haría fácil, convierto todo a un formato fecha y luego trabajo con fechas. Javier Rubén Marcuzzi De: Novvier Marco Uscuchagua Cornelio [[alternative HTML version deleted]]
Una solución con el paquete data.table:> require(data.table) > tabla=data.table(dia=1:10,y=rnorm(10)) > tabladia y 1: 1 -1.04816325 2: 2 -0.23554981 3: 3 1.79809995 4: 4 0.07578478 5: 5 -1.38710527 6: 6 2.18929038 7: 7 0.52330030 8: 8 -0.34695695 9: 9 -0.10357643 10: 10 -0.76800351> tabla[,.(hora=1:24),by=.(dia,y)]dia y hora 1: 1 -1.0481632 1 2: 1 -1.0481632 2 3: 1 -1.0481632 3 4: 1 -1.0481632 4 5: 1 -1.0481632 5 --- 236: 10 -0.7680035 20 237: 10 -0.7680035 21 238: 10 -0.7680035 22 239: 10 -0.7680035 23 240: 10 -0.7680035 24 Un saludo. Olivier ----- Mensaje original ----- De: "Novvier Marco Uscuchagua Cornelio" <novvier en gmail.com> Para: r-help-es en r-project.org Enviados: Jueves, 30 de Junio 2016 19:15:34 Asunto: [R-es] Repetir datos en una tabla Buen día amigos, Tengo una tabla con registros de datos por día y quisiera convertirla en horas, es decir, repetir una fila 24 veces. Lo puedo hacer manualmente pero es un registro de 5 años y tardaría una eternidad. ¿Saben cual es método más rápido? De antemano muchas gracias. Atte. Marco. [[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
Y una solución "clásica": iris[rep(1:nrow(iris), each = 24),] Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com El día 1 de julio de 2016, 11:35, Olivier Nuñez <onunez en unex.es> escribió:> Una solución con el paquete data.table: > >> require(data.table) >> tabla=data.table(dia=1:10,y=rnorm(10)) >> tabla > dia y > 1: 1 -1.04816325 > 2: 2 -0.23554981 > 3: 3 1.79809995 > 4: 4 0.07578478 > 5: 5 -1.38710527 > 6: 6 2.18929038 > 7: 7 0.52330030 > 8: 8 -0.34695695 > 9: 9 -0.10357643 > 10: 10 -0.76800351 >> tabla[,.(hora=1:24),by=.(dia,y)] > dia y hora > 1: 1 -1.0481632 1 > 2: 1 -1.0481632 2 > 3: 1 -1.0481632 3 > 4: 1 -1.0481632 4 > 5: 1 -1.0481632 5 > --- > 236: 10 -0.7680035 20 > 237: 10 -0.7680035 21 > 238: 10 -0.7680035 22 > 239: 10 -0.7680035 23 > 240: 10 -0.7680035 24 > > > Un saludo. Olivier > > ----- Mensaje original ----- > De: "Novvier Marco Uscuchagua Cornelio" <novvier en gmail.com> > Para: r-help-es en r-project.org > Enviados: Jueves, 30 de Junio 2016 19:15:34 > Asunto: [R-es] Repetir datos en una tabla > > Buen día amigos, > Tengo una tabla con registros de datos por día y quisiera convertirla en > horas, es decir, repetir una fila 24 veces. Lo puedo hacer manualmente pero > es un registro de 5 años y tardaría una eternidad. ¿Saben cual es método > más rápido? > De antemano muchas gracias. > Atte. Marco. > > [[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