開始使用免費開始

使用 .melt() 比較股票與公債表現

大家普遍知道,公債價格與股票價格通常呈反向關係。在這個最後的練習中,你會綜合運用本章多個主題來驗證這件事。你拿到的是美國 10 年期公債價格的百分比變動表。它是寬格式,每一年各有一個獨立欄位。你需要用 .melt() 方法來重塑這個資料表。

此外,你會用 .query() 方法來篩掉不需要的資料。接著把這個表與道瓊工業指數價格的百分比變動表做合併。最後,你會將資料繪圖。

表格 ten_yrdji 已為你載入。

本練習屬於課程

使用 pandas 進行資料表連接

檢視課程

練習說明

  • ten_yr 使用 .melt(),將除 metric 欄之外的欄位都轉為長格式,並設定 var_name='date'value_name='close'。將結果存為 bond_perc
  • 使用 .query() 方法,只選出 metric 等於 "close" 的列,存為 bond_perc_close
  • 使用 merge_ordered(),以 date 作為鍵,將 dji(左表)與 bond_perc_close 以 inner 連接合併,並設定 suffixes('_dow', '_bond')。將結果存為 dow_bond
  • 使用 dow_bond,只繪出道瓊與公債的數值。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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()
編輯並執行程式碼