CommencerCommencer gratuitement

Remplir les valeurs manquantes par jour de bourse

L’exercice précédent propageait la dernière observation du jour précédent vers la première observation du jour suivant. Celui-ci vous montre comment remplir les valeurs manquantes par jour de bourse, sans utiliser la dernière valeur du jour précédent.

Vous allez réutiliser le paradigme split-lapply-rbind vu dans le cours Introduction to xts and zoo. Pour mémoire, voici le modèle :

x_split <- split(x, f = "months")
x_list <- lapply(x_split, cummax)
x_list_rbind <- do.call(rbind, x_list)

Rappelez-vous que la syntaxe do.call(rbind, ...) vous permet de passer une liste d’objets à rbind() sans avoir à taper tous leurs noms.

Votre espace de travail contient un objet trade_day qui renferme la série régulière de l’exercice précédent, mais sans aucun NA renseigné.

Cet exercice fait partie du cours

Importer et gérer des données financières avec R

Afficher le cours

Instructions

  • Créez un objet daily_list en utilisant split() pour répartir les données trade_day en une liste de données pour chaque jour.
  • Utilisez maintenant lapply() pour remplir les NA de chaque jour dans la liste daily_list.
  • Enfin, utilisez do.call() et rbind() pour convertir daily_filled en un unique objet xts nommé filled_by_trade_day.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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, ___)
Modifier et exécuter le code