獲「科技部人文社會科學研究中心」補助 AI in Finance: 金融與人工智慧成果分享平台

課程

2020/08/04
python語法介紹
取值和切片

匯入DataFrame之後,可能會想針對某些資料做處理,本節將說明只取資料某欄或某列的語法,以及與取滿足某設定條件的資料。
一、匯入套件
首先一樣是匯入套件,利用pandas套件中的datareader下載股市實際資料,因為用datareader套件下載資料的index(索引)會預設為日期,所以利用.reset_index()語法,先將索引還原為從0開始的index。

二、取資料中某一欄(column)
只想取資料中最高價的那一欄,主要有以下三種方法可以達成:

使用.loc切片語法
因為想取資料中最高價一欄,df1.loc[:,'High'],綠色逗號前是放列的設定,因為要取完整的最高價那欄,所以放冒號代表要所有列

三、取兩欄以上的資料(column)
當資料要取兩欄以上,可以使用下列兩種語法
取最高價和最低價兩欄

四、取資料中某一列(row)
想取資料第一列,index為0,寫法要寫[0:1],因為後面那個數字要扣掉1,所以是取index=0的資料,有以下兩種寫法都可以實現:

五、取兩列以上資料中(row)
同樣有兩種方法可以實現
直接使用df1[0:3]的語法要注意,並不是取index等於0到等於3資料,後面那位數字必須要扣1,因此是取index等於0到2的資料,總共取出3筆

用.loc[0:3]的語法,是取index等於0至等於3的資料,因此總共有4筆資料,與上面的語法不同

六、取某一欄及某一列的資料(取值)
想知道index為0那筆資料的最高價,一樣有以下兩種寫法:

七、取多欄及多列的資料(取值)
利用切片語法.loc,寫法為.loc[0:3,['High','Low']],0:3為index從0到3的資料,並只取最高價和最低價兩個cloumn

iloc是利用位置定位到想要取的資料,下面的範例.iloc[0:4,1:3]代表取index從0到3(4-1=3)的資料,cloumn的部分從第一個column到第二個column(3-1=2)

八、只取滿足某設立條件的表格
假設我們只想取最高價大於等於525元的表格,有以下兩種方式

舉另外一個例子,我們只想取最低價小於等於260元的表格,也是有以下兩種方式可以達成

九、只取滿足兩個設定條件的表格
上述是只取滿足某個條件的表格,也可以取同時滿足兩個條件的表格,下方是舉例想取滿足成交量大於等於1億且開盤價大於等於300元的表格,一樣有兩種方式可以達成