不知道不覺這次鐵人賽也完成一半了,希望能順利撐完全部 30 天。今天開始來介紹 Statcast Search 的 Filters。首先依照比較常使用的幾個開始介紹。會一遍寫
hfSea -> season
賽季年份,預設是 2024
賽季,可以複選,或用 |
來分開複選的選項,因為覺得 hfSea
比較難懂,所以在設計 function 參數的時候會想改成 season
。可以使用的年份為 2008 到最近一個賽季,然後他裡面的選項可以一次選擇所有年份,或是選擇有 Statcast 系統的年份(2015 開始),所以我應該也會設計傳入的值也可以有 all
跟 statcast
。
hfGT -> game_type
球賽的種類,總共有八個種類,一樣會用 |
去分隔複選的選項,這八項分別為:
R
:例行賽(Regular Season)PO
:季後賽(Playoffs)F
:外卡賽(Wildcard)D
:分區系列賽(Division Series)L
:分區冠軍賽(League Championship)W
:世界大賽(World Series)S
:春訓(Spring Training)A
:明星賽(All Star)這個參數雖然網頁 UI 沒設計全選,但我應該還是會多開一個 all
的選項
player_type
搜尋的球員種類,這個不能複選,只能單選,有十個項目,剛好就是所有守備位置加打者,會搭配接下來介紹的 players_lookup
做配合。當我們在 players_lookup
輸入球員 id
,接下來就會搜尋該球員的所有球,再經過 player_type
篩選,選出當下的守備位置所經歷的球,像是搜尋今年的 Clayton Kershaw ,然後再選 player_type
捕手,就會搜尋出他搭配的捕手,今年就會有兩個。
使用的值會有九個,會分別為 batter
、pitcher
和其他守備位置會是 fielder_${守備位置號碼}
,守備位置號碼依序為:
所以如果是游擊手的話,需要傳入的值會是 fielder_6
,不過這樣需要傳入的值可能沒那麼好懂,之後我可能會設計其他代號,像是一壘手變 1B
之類的。
players_lookup
雖然這邊是寫 players
,但其實實際上會分成 pitchers_lookup
跟 batters_lookup
,跟剛才提到的一樣,會以這邊輸入的球員 id
去搜尋。如果想知道球員的 id
的話,可以去 MLB 或 Savant 的球員頁網址知道,像是大谷的 Savant 球員頁 https://baseballsavant.mlb.com/savant-player/shohei-ohtani-660271
,他的 id
就是最後面的 660271
。或是使用 pybaseball
的 playerid_lookup 用球員姓名搜尋。另外這邊是可以傳複數的球員的,會用 []
中括號包住所有球員 id
。
今天先介紹跟這四項,明天會再接著介紹,有些可能不太常用的篩選可能會放到更後面介紹。然後這幾天我也會陸續寫一些程式碼,之後也會一併介紹。
最後一樣謝謝大家耐心地看完這篇文章,有任何問題與建議歡迎直接在留言告訴我,明天見,掰掰。