Aan de slagGa gratis aan de slag

Tijdreeksen met verschillende datums samenvoegen

Aandelen- en obligatiemarkten in de VS zijn op verschillende dagen gesloten. Zo is de obligatiemarkt gesloten op Columbus Day (rond 12 okt) en Veterans Day (rond 11 nov), terwijl de aandelenmarkt op die dagen open is. Een manier om de datums te zien waarop de aandelenmarkt open is en de obligatiemarkt gesloten, is om beide datumindexen om te zetten naar sets en het verschil van die sets te nemen.

De pandas-methode .join() is een handig hulpmiddel om de DataFrames met aandelen en obligaties samen te voegen op de datums waarop beide markten open zijn.

Aandelenkoersen en 10-jaars Amerikaanse staatsobligatierentes, gedownload van FRED, zijn vooraf ingeladen in de DataFrames stocks en bonds.

Deze oefening maakt deel uit van de cursus

Tijdreeksanalyse in Python

Cursus bekijken

Oefeninstructies

  • Zet de datums in stocks.index en bonds.index om naar sets.
  • Neem het verschil van de set met aandelen min de set met obligaties om de datums te krijgen waarop de aandelenmarkt data heeft en de obligatiemarkt niet.
  • Voeg de twee DataFrames samen in een nieuwe DataFrame, stocks_and_bonds, met de .join()-methode, met de syntaxis df1.join(df2).
    • Gebruik het argument how='inner' om de intersectie van datums te krijgen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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 = ___
Code bewerken en uitvoeren