rpubs - series de tiempo multivariadas en r
R: ¿Rellenar fechas faltantes en una serie de tiempo? (2)
Tengo una serie de tiempo de zoológico con días faltantes. Para llenarlo y tener una serie continua lo hago ...
Genero una secuencia cronológica de fecha y hora de principio a fin.
Combino mi serie con esta.
Uso na.locf para sustituir las AN con la observación.
Quito la secuencia cronica sintetica.
¿Puedo hacer lo mismo más fácil? ¿Tal vez con alguna función de índice relacionada con la frecuencia?
Esto se trata en la pregunta 13 de la sección de preguntas frecuentes del zoológico http://cran.r-project.org/web/packages/zoo/vignettes/zoo-faq.pdf que usa el argumento xout = de na.locf para eliminar el paso de combinación . Asegúrese de estar utilizando zoo 1.6.4 o posterior, ya que esta función se agregó recientemente.
Es un poco más fácil si utiliza un objeto de zoo
"vacío" con un índice.
> x <- zoo(1:10,Sys.Date()-10:1)[c(1,3,5,7,10)]
> empty <- zoo(order.by=seq.Date(head(index(x),1),tail(index(x),1),by="days"))
> na.locf(merge(x,empty))
2010-08-14 2010-08-15 2010-08-16 2010-08-17 2010-08-18
1 1 3 3 5
2010-08-19 2010-08-20 2010-08-21 2010-08-22 2010-08-23
5 7 7 7 10
EDITAR: Para datos intra-día (usando la excelente xout=
sugerencia de Gabor):
> index(x) <- as.POSIXct(index(x))
> na.locf(x, xout=seq(head(index(x),1),tail(index(x),1),by="15 min"))