Fusionner des séries temporelles avec des dates différentes
Les marchés actions et obligataires aux États‑Unis sont fermés à des dates différentes. Par exemple, bien que le marché obligataire soit fermé le jour de Columbus (vers le 12 octobre) et le jour des anciens combattants (vers le 11 novembre), le marché actions reste ouvert ces jours‑là. Une façon d’identifier les dates où le marché actions est ouvert et le marché obligataire est fermé consiste à convertir les index de dates en ensembles, puis à calculer la différence entre ces ensembles.
La méthode .join() de pandas est un outil pratique pour fusionner les DataFrames actions et obligations sur les dates où les deux marchés sont ouverts.
Les cours des actions et les rendements des obligations d’État américaines à 10 ans, téléchargés depuis FRED, sont préchargés dans les DataFrames stocks et bonds.
Cet exercice fait partie du cours
Analyse des séries temporelles en Python
Instructions
- Convertissez les dates de
stocks.indexetbonds.indexen ensembles. - Calculez la différence entre l’ensemble des actions et celui des obligations pour obtenir les dates où le marché actions a des données mais pas le marché obligataire.
- Fusionnez les deux DataFrames dans un nouveau DataFrame
stocks_and_bondsen utilisant la méthode.join(), dont la syntaxe estdf1.join(df2).- Pour obtenir l’intersection des dates, utilisez l’argument
how='inner'.
- Pour obtenir l’intersection des dates, utilisez l’argument
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import pandas
import pandas as pd
# Convert the stock index and bond index into sets
set_stock_dates = set(stocks.index)
set_bond_dates = set(___)
# Take the difference between the sets and print
print(set_stock_dates - ___)
# Merge stocks and bonds DataFrames using join()
stocks_and_bonds = ___