Kom igångKom igång gratis

Sammanfoga tidsserier med olika datum

Aktie- och obligationsmarknaderna i USA är stängda på olika dagar. Obligationsmarknaden är till exempel stängd på Columbus Day (runt den 12 oktober) och Veterans Day (runt den 11 november), medan aktiemarknaden är öppen dessa dagar. Ett sätt att se vilka datum aktiemarknaden är öppen men obligationsmarknaden stängd är att konvertera bådas datumindex till mängder och ta differensen mellan dem.

Pandas .join()-metod är ett smidigt verktyg för att sammanfoga DataFrames för aktier och obligationer på de datum då båda marknaderna är öppna.

Aktiekurser och amerikanska statsobligationsräntor med 10 års löptid, hämtade från FRED, finns förinstansierade i DataFrames stocks och bonds.

Den här övningen är en del av kursen

Tidsserieanalys i Python

Visa kurs

Övningsinstruktioner

  • Konvertera datumen i stocks.index och bonds.index till mängder.
  • Ta differensen mellan aktiemängden och obligationsmängden för att få fram de datum då aktiemarknaden har data men obligationsmarknaden inte har det.
  • Sammanfoga de två DataFrames till ett nytt DataFrame, stocks_and_bonds, med .join()-metoden som har syntaxen df1.join(df2).
    • Använd argumentet how='inner' för att få snittet av datum.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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 = ___
Redigera och kör kod