Використання .melt() для порівняння дохідності акцій і облігацій
Добре відомо, що ціни облігацій змінюються протилежно до цін акцій. У цій фінальній вправі ви узагальните багато тем із розділу, щоб це підтвердити. Вам надано таблицю з відсотковою зміною ціни 10‑річних казначейських облігацій США. Вона у широкому форматі, де для кожного року є окремий стовпець. Потрібно застосувати метод .melt(), щоб переформатувати цю таблицю.
Крім того, ви використаєте метод .query(), щоб відфільтрувати зайві дані. Ви об'єднаєте цю таблицю з таблицею відсоткової зміни ціни індексу акцій Dow Jones Industrial. Насамкінець ви побудуєте графік даних.
Таблиці ten_yr та dji уже завантажено для вас.
Ця вправа є частиною курсу
Об'єднання даних у pandas
Інструкції до вправи
- Застосуйте
.melt()доten_yr, щоб розкласти все, окрім стовпцяmetric, установившиvar_name='date'іvalue_name='close'. Збережіть результат уbond_perc. - Використовуючи метод
.query(), виберіть лише ті рядки, деmetricдорівнюєclose, і збережіть уbond_perc_close. - Використайте
merge_ordered()для об'єднанняdji(ліва таблиця) таbond_perc_closeзаdateз внутрішнім з'єднанням (inner join) і встановітьsuffixesрівним('_dow', '_bond'). Збережіть результат уdow_bond. - Використовуючи
dow_bond, побудуйте графік лише значень для Dow і облігацій.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Use melt on ten_yr, unpivot everything besides the metric column
bond_perc = ____
# Use query on bond_perc to select only the rows where metric=close
bond_perc_close = ____
# Merge (ordered) dji and bond_perc_close on date with an inner join
dow_bond = ____
# Plot only the close_dow and close_bond columns
dow_bond.plot(____, x='date', rot=90)
plt.show()