CommencerCommencer gratuitement

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

Afficher le cours

Instructions

  • Utilisez na.locf() pour remplir les valeurs NA dans merged_fedfunds. Affectez le résultat à merged_fedfunds_locf.
  • Créez un sous-ensemble de merged_fedfunds_locf avec index(monthly_fedfunds) pour obtenir un objet xts avec des horodatages en fin de mois. Nommez le résultat aligned_last_day.
  • Utilisez l’argument fromLast de na.locf() pour remplir les valeurs NA avec l’observation suivante. Affectez le résultat à merged_fedfunds_locb.
  • Créez un sous-ensemble de merged_fedfunds_locb avec index(FEDFUNDS) pour obtenir un objet xts avec des horodatages au premier jour du mois. Nommez le résultat aligned_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[___]
Modifier et exécuter le code