進階數據

NBA 進階數據要去哪看?免費數據來源與看法整理

分析師以筆記、籃球與抽象圖表整理 NBA 免費數據來源

找 NBA 進階數據,先不要問「哪個網站欄位最多」,而要問:需要的是官方賽後統計、逐回合事件、傷停狀態、賽程,還是別人加工後的效率指標。不同層級的更新速度與定義不同;免費資料足以完成大多數入門模型,但必須保存口徑並能自行驗算。

NBA 資料可以分成哪些層級?

資料層典型內容更新節奏主要用途
Box score得分、出手、籃板、助攻賽後基礎與效率驗算
Play-by-play每次事件與時間比賽中/賽後回合、陣容與節奏
傷停與先發狀態、替代先發臨場多次輪換修正
賽程與場地日期、主客場、旅程賽季表+異動疲勞與時區
衍生指標Pace、TS%、Net Rating批次更新比較與建模

衍生指標最方便,也最需要讀定義。它是計算結果,不是原始事實;公式、過濾與時間範圍不同,就會出現不同答案。

為什麼同一個指標會有兩個數字?

Pace 可用逐回合直接計數,也可從投籃、罰球、進攻籃板與失誤估算;罰球回合係數選擇不同,小數就不同。Net Rating 可能包含垃圾時間,也可能排除大比分末段。on/off 可能按整季、近十場或特定陣容計算。

因此第一個動作不是平均兩個數字,而是記錄:公式、樣本期間、是否含季後賽、垃圾時間規則、更新時間。口徑相同才比較;口徑不同就分開使用。

研究者在多螢幕上檢查抽象分布與資料批次

如何自行驗算 eFG% 與 TS%?

eFG% 公式是 (命中 + 0.5×三分命中)÷出手。若 20 投 10 中、三分進 4,eFG% 是 (10+2)÷20=60%。TS% 是 得分÷(2×(出手+0.44×罰球出手));得 26 分、20 次出手、6 次罰球,TS% 約 26÷(2×22.64)=57.42%

把原始 box score 丟進進階數據換算器重算,若與資料頁差異大,先查是否用了不同罰球係數或資料尚未更新。

傷停與先發資料該怎麼交叉確認?

臨場資料具有時間性。早上 Questionable、下午參加投籃、賽前宣布限時,三個狀態都可能正確,只是時間不同。保存時間戳,並至少用球隊/聯盟公告與賽前先發訊號交叉確認。不要把搜尋摘要或舊快取當最新狀態。

檢核通過條件失敗風險
時間明確標出更新時間把舊狀態當臨場
身分球員與比賽唯一識別同名或賽程對錯
狀態出賽、限時、先發分開把能上場當正常上場
替代者確認先發與第二陣容只估明星、不估連鎖

賽程資料如何轉成疲勞輸入?

至少需要比賽日期、城市、主客場與前一場結束時間。兩場相隔一天不一定同樣疲勞:同城主場與跨兩個時區的客場差異很大。把休息、連續客場、旅程與時區分欄,再送進疲勞模型;不要只用「B2B 是/否」一欄。

免費資料的品質怎麼抽查?

每次更新隨機抽三場:比對最終比分、出手、罰球與主客場;再用公式驗算一個衍生指標。若異常,只重抓受影響日期,不要直接覆蓋整庫。資料表應保留原始值與加工值,讓錯誤能追到源頭。

分析師以空白筆記與風險儀表整理資料定義及更新時間

建立可重現資料流程的最小清單

保存來源名稱與網址、擷取時間、賽季與日期範圍、欄位定義、清理規則、是否含季後賽與垃圾時間。衍生欄位旁寫公式版本;模型輸出連回使用的資料快照。資料來源的選擇沒有神奇名單,真正重要的是定義透明、時間正確、異常可回查,以及別人能用同一輸入重算出同一結果。

資料格式與識別碼為什麼重要?

球隊名稱會有縮寫、舊名與語言差異,球員也可能同名;可靠資料表應使用穩定識別碼,再把顯示名稱當欄位。比賽以賽季、日期與唯一 game id 鎖定,不能只用「主隊對客隊」,因為季前賽、例行賽與季後賽可能重複。時區一律保存原始時間與統一標準時間,顯示時才轉台灣時間。

數值欄也要區分缺值與零。球員沒上場不是得分 0 的一般樣本;比賽尚未更新也不是最終比分 0 比 0。若把缺值補零,平均與使用率會被系統性拉低。每個欄位先定型別、允許範圍與缺值意義,再進模型。

如何處理資料修正與版本?

賽後統計可能因官方更正而更新。不要直接覆蓋到無法追蹤;至少保留擷取批次與更新時間。若同一比賽的新版本改變籃板或助攻,衍生 eFG% 可能不變,但助攻率與 on/off 會變。模型結果應連到使用的批次,才能回答「當時為什麼得到這個數字」。

簡單版本策略是每日快照檔加日期,或資料表增加 fetched_atsource_updated_at。重跑時先比較雜湊,只更新變動列,並輸出變更摘要。大量欄位突然歸零或場數減少時應停止發布,而不是自動接受。

合併多個來源時有哪些陷阱?

多來源不是越多越準。若 A 用賽事當地日期、B 用 UTC 日期,午夜附近比賽可能對錯;若 A 含季後賽、B 只含例行賽,合併後場數不一致;若一方 Pace 排除垃圾時間,另一方未排除,平均兩者沒有明確意義。先選一個原始來源作定錨,再把第二來源用於驗證特定欄位。

合併問題症狀修正方式
時區不同日期差一天先統一 UTC 與 game id
賽季定義不同場數不一致分開季前、例行、季後
名稱不同同隊出現兩列用穩定識別碼對照
更新延遲最後一場缺資料記錄擷取時間與完整度
公式不同Pace、回合不一致保留原始欄並自行重算

發布前的資料品質閘門

確認場數等於預期賽程、比分與出手不為負、命中不大於出手、球員分鐘總和落在合理區間、主客場唯一、傷停時間不晚於模型產生時間。再抽樣三場人工回查。任何一項失敗,頁面應保留上一版或標示資料時間,不能把半套更新當最新完整結果。

免費資料真正的成本是維護定義與品質。只要流程可重現、錯誤能停止發布、使用者看得到更新時間,它就比欄位很多卻無法解釋的資料頁更可靠。

資料只服務研究,不會消除單場隨機性;任何分析都不構成結果保證。

常見問題

NBA 進階數據免費資料夠用嗎?

入門的 eFG%、TS%、攻守效率、Pace 與主客場拆分通常足夠;關鍵是資料口徑與更新時間,不是頁面上有多少欄位。

為什麼不同網站的 Pace 不一樣?

可能使用不同回合估算公式、垃圾時間過濾、賽季範圍或更新批次。比較前要先讀定義。

傷停資訊只看一個來源可以嗎?

不建議。球隊公告、聯盟狀態與賽前活動的時間可能不同,臨場應至少交叉確認兩個獨立訊號。

on/off 數據可以直接判斷球員價值嗎?

不行。它受同場隊友、對手與輪換影響,應搭配角色、樣本與替代者,而不是直接當缺陣分數。

資料下載後最少要保存哪些欄位?

來源、擷取時間、賽季、日期範圍、是否含季後賽、主客場、垃圾時間口徑與欄位定義。

免費工具進階數據換算器輸入基礎 box score,秒算真實命中率 TS%、有效命中率 eFG% 與每次出手得分立即使用 →免費工具主客場戰績落差分析器輸入主客場勝負與 ATS 戰績,算出主場優勢在勝率與讓分上值幾分立即使用 →

本站為 NBA 數據研究與機率教育內容,不提供投注服務、不代理任何平台。未滿 18 歲請勿投注;理性參與,量力而為。

© 2026 籃球數據誌