CommencerCommencer gratuitement

Remplacer les données manquantes - I

Comme vous l’avez constaté dans l’exercice précédent, vos données trimestrielles de PIB semblent comporter plusieurs observations manquantes. En fait, votre appel à summary() dans l’exercice précédent a révélé 80 valeurs manquantes !

Comme vous vous en souvenez sans doute du premier cours sur xts, xts et zoo proposent plusieurs fonctions pour traiter les données manquantes.

La technique la plus simple est la commande na.locf(), qui propage la dernière observation avant la valeur manquante (d’où « last observation carried forward », ou locf). Cette approche est souvent la plus appropriée pour gérer les données manquantes, surtout lorsque vous avez des raisons d’être prudent quant à la croissance dans vos données.

Une approche similaire fonctionne dans l’autre sens en prenant la première observation après la valeur manquante et en la propageant vers l’arrière (« next observation carried backward », ou nocb). Cette technique peut également être réalisée avec la commande na.locf() en définissant l’argument fromLast à TRUE.

La meilleure méthode dépend du type de données avec lequel vous travaillez et de vos hypothèses sur l’évolution des données dans le temps.

Cet exercice fait partie du cours

Étude de cas : analyser des séries temporelles urbaines en R

Afficher le cours

Instructions

  • Utilisez na.locf() pour remplir les valeurs manquantes de gdp_xts en propageant la dernière observation connue. Enregistrez ce nouvel objet xts sous le nom gdp_locf.
  • Utilisez un autre appel à na.locf() pour remplir les valeurs manquantes de gdp_xts à partir de l’observation suivante propagée vers l’arrière. Pour cela, définissez l’argument fromLast à TRUE. Enregistrez ce nouvel objet xts sous le nom gdp_nocb.
  • Tracez chacun de ces objets avec plot.xts(). Incluez la commande par() fournie pour afficher les deux graphiques côte à côte.
  • Interrogez chaque objet (gdp_locf et gdp_nocb) pour le PIB en 1993.

Exercice interactif pratique

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

# Fill NAs in gdp_xts with the last observation carried forward
gdp_locf <- 

# Fill NAs in gdp_xts with the next observation carried backward 
gdp_nocb <- 

# Produce a plot for each of your new xts objects
par(mfrow = c(2,1))
plot.xts(___, major.format = "%Y")
plot.xts(___, major.format = "%Y")

# Query for GDP in 1993 in both gdp_locf and gdp_nocb

Modifier et exécuter le code