Rellenar valores faltantes por día de negociación
En el ejercicio anterior se arrastró la última observación del día previo hacia la primera observación del día siguiente. En este ejercicio verás cómo rellenar valores faltantes por día de negociación, sin usar el valor final del día anterior.
Vas a usar el mismo paradigma split-lapply-rbind del curso Introduction to xts and zoo. Como referencia, el patrón es el siguiente.
x_split <- split(x, f = "months")
x_list <- lapply(x_split, cummax)
x_list_rbind <- do.call(rbind, x_list)
Recuerda que la sintaxis do.call(rbind, ...) te permite pasar una lista de objetos a rbind() en lugar de tener que escribir todos sus nombres.
Tu espacio de trabajo tiene un objeto trade_day que contiene la serie regular del ejercicio anterior, pero sin ningún NA rellenado.
Este ejercicio forma parte del curso
Importación y gestión de datos financieros en R
Instrucciones del ejercicio
- Crea un objeto
daily_listusandosplit()para poner los datos detrade_dayen una lista con los datos de cada día. - Ahora usa
lapply()para rellenar losNAde los datos de cada día en la listadaily_list. - Por último, usa
do.call()yrbind()para convertirdaily_filleden un único objeto xts llamadofilled_by_trade_day.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Split trade_day into days
daily_list <- split(___ , f = "___")
# Use lapply to call na.locf for each day in daily_list
daily_filled <- lapply(___, FUN = ___)
# Use do.call to rbind the results
filled_by_trade_day <- do.call(rbind, ___)