Lấy mã cổ phiếu của công ty dịch vụ tiêu dùng lớn nhất
Thay vì lập chỉ mục dữ liệu bằng biểu thức điều kiện, bạn cũng có thể lọc theo các giá trị nhất định với .loc[row_selector, column_selector]. Ngoài ra, bạn có thể dùng .set_index() để đặt một cột có giá trị duy nhất làm chỉ mục của DataFrame, và .idxmax() để trả về chỉ mục của giá trị lớn nhất.
Trong bài tập này, bạn sẽ áp dụng các cách chọn công ty này để tìm công ty dịch vụ tiêu dùng có giá trị vốn hóa cao nhất trên bất kỳ sàn nào trong ba sàn, và dùng mã cổ phiếu của nó để vẽ xu hướng giá. DataReader, date, pandas là pd, và matplotlib.pyplot là plt đã được import, cũng như DataFrame listings từ bài 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
- Dùng
.set_index()để đặt cộ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ó'Sector'bằng'Consumer Services', chọn cột'Market Capitalization', và áp dụng.idxmax()để gán mã cổ phiếu của công ty Consumer Services lớn nhất choticker. - Dùng
date()để đặtstartlà ngày 1 tháng 1 năm 2015. - Dùng
DataReader()để lấy dữ liệu cổ phiếu chotickertừ'yahoo'kể từstartvà lưu vàodata. - Vẽ các giá trị
'close'và'volume'trongdata, với các đối sốsecondary_y='volume'vàtitle=ticker.
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 the index of listings to Stock Symbol
listings_ss = listings.____(____)
# Get ticker of the largest Consumer Services company
ticker = listings_ss.____[____, ____].____()
# Set the start date
start = ____
# Import the stock data
data = ____
# Plot close and volume
data[['close', 'volume']].plot(secondary_y=____, title=____)
# Show the plot
plt.show()