Получение данных по 3 крупнейшим финансовым компаниям
Объект pd.MultiIndex() содержит несколько идентификаторов на каждую строку. Это позволяет получать данные сразу по нескольким компаниям, задавая нужные критерии.
Применим этот новый навык, чтобы получить котировки акций крупнейших компаний финансового сектора. Библиотеки DataReader, date, pandas (как pd) и matplotlib.pyplot (как plt) уже импортированы, как и DataFrame listings из предыдущего упражнения.
Это упражнение является частью курса
Импорт и управление финансовыми данными в Python
Инструкции к упражнению
- Установите
'Stock Symbol'в качестве индекса дляlistingsи присвойте результат переменнойlistings_ss. - С помощью
.loc[]отфильтруйте строки, в которых сектор компании равен'Finance', и извлеките столбец'Market Capitalization'. Примените.nlargest(), чтобы выбрать 3 компании с наибольшей рыночной капитализацией, и присвойте результат переменнойtop_3_companies. - Преобразуйте индекс результата в список и присвойте его переменной
top_3_tickers. - С помощью
date()задайте значениеstartкак 1 января 2015 года. - С помощью
date()задайте значениеendкак 1 апреля 2020 года. - Используйте
DataReader(), чтобы получить данные по акциям изtop_3_tickersиз источника'iex'за период сstartпоend, и присвойте результат переменнойresult. - Примените метод
.stack(), чтобы преобразоватьDataFrameв длинный формат, перенеся тикеры в индекс. - Выберите столбец
'close'изdata, примените.unstack()и изучите структуру полученного DataFrame в широком формате с помощью.info().
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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'].____().____()