Aligner des séries sur le premier et le dernier jour du mois
Il arrive que vous ne puissiez pas utiliser des classes pratiques comme yearmon pour représenter des horodatages. Cet exercice vous montre comment aligner manuellement des données fusionnées selon la représentation temporelle que vous préférez.
Commencez par fusionner les données à plus basse fréquence avec les données agrégées, puis utilisez na.locf() pour propager les NA vers l’avant (ou vers l’arrière avec fromLast = TRUE). Vous pourrez ensuite créer un sous-ensemble du résultat en utilisant l’index de l’objet dont la représentation vous convient.
Votre espace de travail contient FEDFUNDS, monthly_fedfunds (le résultat de apply.monthly(DFF, mean)) et merged_fedfunds (le résultat de merge(FEDFUNDS, monthly_fedfunds) où l’index de monthly_fedfunds est un Date). Notez la présence de valeurs NA dans merged_fedfunds.
Cet exercice fait partie du cours
Importer et gérer des données financières avec R
Instructions
- Utilisez
na.locf()pour remplir les valeursNAdansmerged_fedfunds. Affectez le résultat àmerged_fedfunds_locf. - Créez un sous-ensemble de
merged_fedfunds_locfavecindex(monthly_fedfunds)pour obtenir un objet xts avec des horodatages en fin de mois. Nommez le résultataligned_last_day. - Utilisez l’argument
fromLastdena.locf()pour remplir les valeursNAavec l’observation suivante. Affectez le résultat àmerged_fedfunds_locb. - Créez un sous-ensemble de
merged_fedfunds_locbavecindex(FEDFUNDS)pour obtenir un objet xts avec des horodatages au premier jour du mois. Nommez le résultataligned_first_day.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Fill NA forward
merged_fedfunds_locf <- ___(___)
# Extract index values containing last day of month
aligned_last_day <- merged_fedfunds_locf[___]
# Fill NA backward
merged_fedfunds_locb <- na.locf(___, fromLast = ___)
# Extract index values containing first day of month
aligned_first_day <- merged_fedfunds_locb[___]