Riempi i valori mancanti per giorno di negoziazione
Nel precedente esercizio hai propagato l’ultima osservazione del giorno precedente nella prima osservazione del giorno successivo. In questo esercizio vedrai come riempire i valori mancanti per giorno di negoziazione, senza usare il valore finale del giorno prima.
Userai lo stesso paradigma split-lapply-rbind dal corso Introduction to xts and zoo. Per riferimento, lo schema è qui sotto.
x_split <- split(x, f = "months")
x_list <- lapply(x_split, cummax)
x_list_rbind <- do.call(rbind, x_list)
Ricorda che la sintassi do.call(rbind, ...) ti permette di passare una lista di oggetti a rbind() invece di dover digitare tutti i loro nomi.
Nel tuo workspace è presente un oggetto trade_day che contiene la serie regolare dell’esercizio precedente, ma senza alcun NA già riempito.
Questo esercizio fa parte del corso
Importare e gestire dati finanziari in R
Istruzioni dell'esercizio
- Crea un oggetto
daily_listusandosplit()per inserire i dati ditrade_dayin una lista con i dati di ciascun giorno. - Ora usa
lapply()per riempire iNAdei dati di ogni giorno nella listadaily_list. - Infine, usa
do.call()erbind()per convertiredaily_filledin un singolo oggetto xts chiamatofilled_by_trade_day.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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, ___)