Bắt đầu ngayBắt đầu miễn phí

Gộp chuỗi thời gian với các ngày khác nhau

Thị trường cổ phiếu và trái phiếu ở Mỹ đóng cửa vào các ngày khác nhau. Ví dụ, thị trường trái phiếu nghỉ vào Ngày Columbus (khoảng 12/10) và Ngày Cựu chiến binh (khoảng 11/11), nhưng thị trường cổ phiếu vẫn mở cửa các ngày đó. Một cách để xem những ngày thị trường cổ phiếu mở còn thị trường trái phiếu đóng là chuyển cả hai chỉ mục ngày thành tập hợp (set) và lấy phần hiệu giữa các tập hợp.

Phương thức .join() của pandas là công cụ tiện lợi để gộp hai DataFrame cổ phiếu và trái phiếu theo các ngày mà cả hai thị trường đều mở.

Giá cổ phiếu và lợi suất trái phiếu Chính phủ Mỹ kỳ hạn 10 năm, được tải xuống từ FRED, đã được nạp sẵn trong các DataFrame stocksbonds.

Bài tập này là một phần của khóa học

Phân tích chuỗi thời gian với Python

Xem khóa học

Hướng dẫn bài tập

  • Chuyển các ngày trong stocks.indexbonds.index thành các tập hợp (set).
  • Lấy hiệu giữa tập hợp cổ phiếu trừ đi tập hợp trái phiếu để có những ngày thị trường cổ phiếu có dữ liệu còn thị trường trái phiếu thì không.
  • Gộp hai DataFrame thành một DataFrame mới, stocks_and_bonds, bằng phương thức .join() với cú pháp df1.join(df2).
    • Để lấy giao của các ngày, dùng đối số how='inner'.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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 = ___
Chỉnh sửa và Chạy Mã