Saudos estimados ! Tengo una consulta, tengo archivos Excel con series de tiempo, pero están incompletas. El problema es que las fechas están pegadas, por lo que es muy dificil saber donde hay discontinuidades. No me interesa llenar los vacíos en las variables, sólo las fechas y dejar las variables en blanco ¿es posible hacerlo en R?. Mi serie de tiempo es del tipo (con fecha en formato dd-mm-yyyy hh:mm): 01-01-2011 00:00 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:01 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:02 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:03 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:04 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:07 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:08 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:09 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:10 var1 var2 var3 var4 var5 var6 var7 var8 Saludos y muy agradecido! [[alternative HTML version deleted]]
Marcuzzi, Javier Rubén
2012-May-09 21:04 UTC
[R-es] serie de tiempo incompleta: rellenar sólo fechas
Claudio Por la forma que se ve su mensaje, debe estar utilizando linux, o más de un sistema operativo, es así. Porque un problema que yo tuve era respecto a cómo finalizan las líneas cada sistema, aunque debe haber algo entre fecha y fecha, un espacio, tabulación, coma, algo debería haber, aunque invisible a sus ojos, en código debería estar, si no hay anda es un lío porque tendría que contar unos 01-01-2011 00:00 (16) caracteres, separarlos a partir del 17 ... Ahora, si la serie de tiempo está incompleta, ¿como se da cuenta el dato faltante?, ¿en el xls tiene más de una columna con fechas?, si es así casi seguro que tiene algo separando los datos. Javier -----Mensaje original----- From: claudiomet Sent: Wednesday, May 09, 2012 4:47 PM To: r-help-es en r-project.org Subject: [R-es] serie de tiempo incompleta: rellenar sólo fechas Saudos estimados ! Tengo una consulta, tengo archivos Excel con series de tiempo, pero están incompletas. El problema es que las fechas están pegadas, por lo que es muy dificil saber donde hay discontinuidades. No me interesa llenar los vacÃos en las variables, sólo las fechas y dejar las variables en blanco ¿es posible hacerlo en R?. Mi serie de tiempo es del tipo (con fecha en formato dd-mm-yyyy hh:mm): 01-01-2011 00:00 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:01 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:02 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:03 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:04 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:07 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:08 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:09 var1 var2 var3 var4 var5 var6 var7 var8 01-01-2011 00:10 var1 var2 var3 var4 var5 var6 var7 var8 Saludos y muy agradecido! [[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
Carlos Ortega
2012-May-09 23:24 UTC
[R-es] serie de tiempo incompleta: rellenar sólo fechas
Hola, Otra forma de hacerlo es esta: http://stackoverflow.com/questions/9514504/add-missing-value-in-column-with-value-from-row-above Se reemplazaría el valor faltante (NA) por el varlor inmediatamente anterior que no lo era. Saludos, Carlos Ortega www.qualityexcellence.es El 9 de mayo de 2012 21:47, claudiomet <claudiomet@gmail.com> escribió:> Saudos estimados ! > > Tengo una consulta, tengo archivos Excel con series de tiempo, pero están > incompletas. El problema es que las fechas están pegadas, por lo que es muy > dificil saber donde hay discontinuidades. No me interesa llenar los vacíos > en las variables, sólo las fechas y dejar las variables en blanco ¿es > posible hacerlo en R?. Mi serie de tiempo es del tipo (con fecha en formato > dd-mm-yyyy hh:mm): > > 01-01-2011 00:00 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:01 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:02 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:03 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:04 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:07 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:08 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:09 var1 var2 var3 var4 var5 var6 var7 var8 > 01-01-2011 00:10 var1 var2 var3 var4 var5 var6 var7 var8 > > Saludos y muy agradecido! > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Gracias por sus respuestas estimados ! Javier: Si, estoy usando Linux, el archivo es ASCII y el formato no es problema, puedo poner coma entre las variables para separar fecha,var1,var2,var3... etc. (con algunos trucos de sed) El problema es que mis datos son mediciones que están minuto a minuto y necesito obtener promedios cada 10 minutos, cada 15 minutos, cada 30 minutos y cada 60 minutos, pero en algunos minutos faltan mediciones y faltan las fechas, entonces necesito rellenar las fechas que faltan, los datos no importa. Carlos: Gracias por tu respuesta, pero ese enlace explican como llenar datos, yo necesito llenar sólo las fechas que faltan y dejar los datos en blanco para tener la serie contínua en el tiempo. Saludos y gracias ! El 9 de mayo de 2012 20:24, Carlos Ortega <cof@qualityexcellence.es>escribió:> Hola, > > Otra forma de hacerlo es esta: > > > http://stackoverflow.com/questions/9514504/add-missing-value-in-column-with-value-from-row-above > > Se reemplazaría el valor faltante (NA) por el varlor inmediatamente > anterior que no lo era. > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > El 9 de mayo de 2012 21:47, claudiomet <claudiomet@gmail.com> escribió: > >> Saudos estimados ! >> >> Tengo una consulta, tengo archivos Excel con series de tiempo, pero están >> incompletas. El problema es que las fechas están pegadas, por lo que es >> muy >> dificil saber donde hay discontinuidades. No me interesa llenar los vacíos >> en las variables, sólo las fechas y dejar las variables en blanco ¿es >> posible hacerlo en R?. Mi serie de tiempo es del tipo (con fecha en >> formato >> dd-mm-yyyy hh:mm): >> >> 01-01-2011 00:00 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:01 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:02 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:03 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:04 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:07 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:08 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:09 var1 var2 var3 var4 var5 var6 var7 var8 >> 01-01-2011 00:10 var1 var2 var3 var4 var5 var6 var7 var8 >> >> Saludos y muy agradecido! >> >> [[alternative HTML version deleted]] >> >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es@r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> >> > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es >-- Claudio Cortes Meteorologo, Ingeniero de proyectos Micomo S.A. Filial Codelco Unidad de Negocios Ambientales www.micomo.cl --- Claudio Cortes Meteorologist, Project Engineer Micomo S.A. Codelco Subsidiary Environmental Business Unit www.micomo.cl [[alternative HTML version deleted]]
Carlos Ortega
2012-May-10 14:09 UTC
[R-es] serie de tiempo incompleta: rellenar sólo fechas
Hola, Realmente de la referencia, quizás debiera de haber sido más específico, la respuesta estaba en el uso de la librería "zoo" y la función "na.locf()". De esa función, hay un ejemplo que he adaptado a tu caso:> z <- zoo(1:9, as.POSIXct(c("2010-01-04 09:32:02", "2010-01-04 09:33:06",+ "2010-01-04 09:35:07", "2010-01-04 09:36:08", "2010-01-04 09:37:09", + "2010-01-04 09:38:10", "2010-01-04 09:39:11", "2010-01-04 09:40:13",+ "2010-01-04 09:41:14")))> > > g <- seq(start(z), end(z), by = "1 min")> z2010-01-04 09:32:02 2010-01-04 09:33:06 2010-01-04 09:35:071 2 3 2010-01-04 09:36:08 2010-01-04 09:37:09 2010-01-04 09:38:10 4 5 6 2010-01-04 09:39:11 2010-01-04 09:40:13 2010-01-04 09:41:14 7 8 9 > g [1] "2010-01-04 09:32:02 CET" "2010-01-04 09:33:02 CET" [3] "2010-01-04 09:34:02 CET" "2010-01-04 09:35:02 CET" [5] "2010-01-04 09:36:02 CET" "2010-01-04 09:37:02 CET" [7] "2010-01-04 09:38:02 CET" "2010-01-04 09:39:02 CET" [9] "2010-01-04 09:40:02 CET" "2010-01-04 09:41:02 CET"> na.locf(z, xout = g)2010-01-04 09:32:02 2010-01-04 09:33:02 *2010-01-04 09:34:02* 1 1 2 2010-01-04 09:35:02 2010-01-04 09:36:02 2010-01-04 09:37:02 2 3 4 2010-01-04 09:38:02 2010-01-04 09:39:02 2010-01-04 09:40:02 5 6 7 2010-01-04 09:41:02 8 > En la variable "z" falta el minuto 9:34. Con la ayuda de "g" (creada a partir de "z") se consigue con "na.locf()" rellenar esa fecha, destacada en rojo... Saludos, Carlos Ortega www.qualityexcellence.es El 10 de mayo de 2012 15:44, claudiomet <claudiomet@gmail.com> escribió:> Gracias por sus respuestas estimados ! > > Javier: Si, estoy usando Linux, el archivo es ASCII y el formato no es > problema, puedo poner coma entre las variables para separar > fecha,var1,var2,var3... etc. (con algunos trucos de sed) > > El problema es que mis datos son mediciones que están minuto a minuto y > necesito obtener promedios cada 10 minutos, cada 15 minutos, cada 30 > minutos y cada 60 minutos, pero en algunos minutos faltan mediciones y > faltan las fechas, entonces necesito rellenar las fechas que faltan, los > datos no importa. > > Carlos: Gracias por tu respuesta, pero ese enlace explican como llenar > datos, yo necesito llenar sólo las fechas que faltan y dejar los datos en > blanco para tener la serie contínua en el tiempo. > > Saludos y gracias ! > > > El 9 de mayo de 2012 20:24, Carlos Ortega <cof@qualityexcellence.es>escribió: > > Hola, >> >> Otra forma de hacerlo es esta: >> >> >> http://stackoverflow.com/questions/9514504/add-missing-value-in-column-with-value-from-row-above >> >> Se reemplazaría el valor faltante (NA) por el varlor inmediatamente >> anterior que no lo era. >> >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> El 9 de mayo de 2012 21:47, claudiomet <claudiomet@gmail.com> escribió: >> >>> Saudos estimados ! >>> >>> Tengo una consulta, tengo archivos Excel con series de tiempo, pero están >>> incompletas. El problema es que las fechas están pegadas, por lo que es >>> muy >>> dificil saber donde hay discontinuidades. No me interesa llenar los >>> vacíos >>> en las variables, sólo las fechas y dejar las variables en blanco ¿es >>> posible hacerlo en R?. Mi serie de tiempo es del tipo (con fecha en >>> formato >>> dd-mm-yyyy hh:mm): >>> >>> 01-01-2011 00:00 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:01 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:02 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:03 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:04 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:07 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:08 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:09 var1 var2 var3 var4 var5 var6 var7 var8 >>> 01-01-2011 00:10 var1 var2 var3 var4 var5 var6 var7 var8 >>> >>> Saludos y muy agradecido! >>> >>> [[alternative HTML version deleted]] >>> >>> >>> _______________________________________________ >>> R-help-es mailing list >>> R-help-es@r-project.org >>> https://stat.ethz.ch/mailman/listinfo/r-help-es >>> >>> >> >> >> -- >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> > > > > -- > Claudio Cortes > Meteorologo, Ingeniero de proyectos > Micomo S.A. Filial Codelco > Unidad de Negocios Ambientales > www.micomo.cl > > --- > Claudio Cortes > Meteorologist, Project Engineer > Micomo S.A. Codelco Subsidiary > Environmental Business Unit > www.micomo.cl >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]