Lấy dữ liệu cho 3 công ty tài chính lớn nhất
Đối tượng pd.MultiIndex() có nhiều hơn một khóa định danh cho mỗi hàng. Nhờ đó, bạn có thể lấy dữ liệu dựa trên tiêu chí cho nhiều công ty cùng lúc.
Hãy áp dụng kỹ năng này để lấy giá cổ phiếu cho các công ty lớn nhất trong ngành tài chính. DataReader, date, pandas là pd, và matplotlib.pyplot là plt đã được import, cùng với DataFrame listings từ bài tập trước.
Bài tập này là một phần của khóa học
Nhập và quản lý dữ liệu tài chính bằng Python
Hướng dẫn bài tập
- Đặt
'Stock Symbol'làm chỉ mục cholistings, gán kết quả cholistings_ss. - Dùng
.loc[]để lọc các hàng có ngành của công ty là'Finance'và trích xuất cột'Market Capitalization'. Áp dụng.nlargest()để gán 3 công ty có giá trị vốn hóa lớn nhất vàotop_3_companies. - Chuyển chỉ mục của kết quả thành danh sách và gán cho
top_3_tickers. - Dùng
date()để đặtstartlà ngày 1 tháng 1 năm 2015. - Dùng
date()để đặtendlà ngày 1 tháng 4 năm 2020. - Dùng
DataReader()để lấy dữ liệu cổ phiếu chotop_3_tickerstừ'iex'kể từstartđếnendvà gán choresult. - Áp dụng phương thức
.stack()để chuyểnDataFramesang định dạng dài bằng cách đưa các ticker vào chỉ mục. - Chọn
'close'từdata, áp dụng.unstack(), và kiểm tra DataFrame thu được (giờ ở định dạng rộng) bằng.info().
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.
# Set Stock Symbol as the index
listings_ss = listings.____
# Get ticker of 3 largest finance companies
top_3_companies = listings_ss.loc[____].____(n=____)
# Convert index to list
top_3_tickers = top_3_companies.____.____()
# Set start date
start = ____
# Set end date
end = ____
# Import stock data
result = ____
# Apply stack method
data = ____
# Unstack and inspect result
data['close'].____().____()