Mesclando séries temporais com datas diferentes

Os mercados de ações e títulos nos EUA são fechados em dias diferentes. Por exemplo, embora o mercado de títulos esteja fechado no Columbus Day (por volta de 12 de outubro) e no Veterans Day (por volta de 11 de novembro), o mercado de ações está aberto nesses dias. Uma maneira de ver as datas em que o mercado de ações está aberto e o mercado de títulos está fechado é converter os dois índices de datas em conjuntos e pegar a diferença nos conjuntos.

O método pandas .join() é uma ferramenta conveniente para mesclar os DataFrames de ações e títulos em datas em que ambos os mercados estão abertos.

Os preços das ações e os rendimentos dos títulos do governo US de 10 anos, que foram baixados de FREDsão pré-carregados nos DataFrames stocks e bonds.

Este exercício faz parte do curso

Análise de séries temporais em Python

Ver Curso

Instruções de exercício

  • Converta as datas em stocks.index e bonds.index em conjuntos.

  • Pegue a diferença do conjunto de ações menos o conjunto de títulos para obter as datas em que o mercado de ações tem dados, mas o mercado de títulos não tem.

  • Mesclar os dois DataFrames em um novo DataFrame, stocks_and_bonds, usando o método .join(), que tem a sintaxe df1.join(df2).

    • Para obter a interseção de datas, use o argumento how='inner'.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# 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 = ___