[量化投資基本功] 如何將日期設定為index?

當我們將資料檔案匯入python以後,會發現python會自動給予每筆資料一個索引值,從0開始。而在處理金融數據資料時,時常都是時間序列資料的格式,因此,我們會希望讓索引值變成日期格式,這樣我們就可以透過這個索引,方便地查詢任一天的資料,或是取出任一區間的資料,儼然成為一個小小資料庫。

(一) 引入模組

這裡我們一樣會透過pandas套件進行資料處理。
import pandas as pd

(二) 設定日期格式index

在讀入資料後,我們可以透過”.set_index()”來進行索引值的設定。而如果我們要將索引值設定成日期格式,則可以透過”pd.to_datetime()”來進行。一般來說,python可以很聰明的自動辨別出年月日,然而,有些時候會因日期跟月份相像而無法有效辨識。因此我們可以觀察資料日期格式的長相,透過”format=’%Y/%m/%d”來對年月日進行設定。

程式範例:
df=pd.read_csv('00690.csv',encoding='big5')
df.set_index(pd.todatetime(df['Date'],format='%Y/%m/%d'),inplace=True)

(三) 資料查詢

當我們將index成功設定成日期格式後,我們就可以透過”.loc[‘日期’]”來進行資料查詢。

查詢某天資料:
df.loc['2020-4-7']

查詢某段期間資料:
df.loc['2020-4-7':'2020-5-10']

除了資料查詢方便外,將index設定成日期格式後,未來對於資料頻率的修改、星期幾或是確認交易日等等的功能使用上都會非常便利。

程式檔案,歡迎下載Github

Share

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *