簡體   English   中英

熊貓和幾個不同的時間序列在熊貓中的索引

[英]Concat & Indexing Several Different Time Series In Pandas

我使用concat將幾個不同的期貨價格時間序列組合成一個數據框架。 例如,大豆和玉米期貨合約多年。

我想在11月1日到7月1日之間以圖形方式比較不同合同的價格,而不考慮年份。 為此,我使用reset_index()將它們組合在一起。

唯一的問題是當我繪制圖形時,我想要一個比0到160數字索引間隔更直觀的x軸。 理想情況下,我希望每月11月1日至7月1日有標簽,省略年份。

這當然在excel中相當容易,但我也希望能夠在Python中完成它。

dfc14 = quandl.get('CME/CZ2014.6', start_date='2013-11-01', end_date='2014-07-\ 01', authtoken=api_key)

dfs14 = quandl.get('CME/SX2014.6', start_date='2013-11-01', end_date='2014-07-01', authtoken=api_key)
dfr14 = dfs14.div(dfc14)
dfr14 = dfr14.rename(columns={'Settle':'2014'})
dfr14 = dfr14.reset_index()
# ...
com_df = pd.concat([dfr17, dfr16, dfr14],)

我這樣做的方法是得到一個mmdd列並將其用作索引 - 用於x軸和x軸標簽。

我為三個DataFrames兩個做了DataFrames

dfr14['mmdd'] = (dfr14['Date'].dt.month.astype(str).str.zfill(2) + 
                 dfr14['Date'].dt.day.astype(str).str.zfill(2))
dfr15['mmdd'] = (dfr15['Date'].dt.month.astype(str).str.zfill(2) + 
                 dfr15['Date'].dt.day.astype(str).str.zfill(2))

dfr15 = dfr15.set_index('mmdd')
dfr14 = dfr14.set_index('mmdd')

ax = dfr15.plot()
dfr14.plot(ax=ax)
plt.show()

兩個結果:

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM