NBA 舉辦編程馬拉松 - 數據分析時代的到來

據 TechCrunch 報道:NBA 最近在紐約曼哈頓舉辦了一項邀請活動:編程馬拉松Hackathon)。 他們打算建立一種新的視角來看待比賽數據。

美國人很鍾情於運動,棒球是其中之一。MLB(職棒大聯盟)是使用統計分析和預測的先行者:打擊、防守、投球、失誤等。與此同時,NBA 近年來一直致力於提高評論員、教練和球員的統計分析能力--這次首屆編程馬拉松就是最新的嘗試。

此次活動邀請的參賽人員包括本科生、研究生和博士生,200個程序員被分為三個等級,面對不同的挑戰。

比賽規則很簡單:每個團隊對 NBA 提供的數據進行統計分析,數據本身不允許篡改,否則將被取消資格。時間從上午9點開始,到下午5:15結束,歷時8小時15分鐘

這並不是件容易的任務:原始數據超過 5GB,包括投籃數據、回合數據、精確至1/25秒的球員追蹤數據等。

最終,由哥倫比亞大學研究生 Alex Wainger、Zac Robertson、紐約大學本科生 Ella Kuzmenko 和佩斯大學本科生 William Robbins 組成的團隊贏得了比賽冠軍。

他們奪冠項目名為「關於英雄球」。

在分析資料庫時,他們放棄了一些已有的可行建議,比如創建一個防禦的效率公式或者分析如何能讓投籃更准,而是選擇將運動員在常規賽和季後賽中的運動趨勢做一個對比。他們假設在常規賽中,運動員的打球方式更以團隊為中心,而在季後賽中,他們更傾向於人們所謂的「英雄球」式的打法。最終他們用 python 處理了 5g 的資料庫,抽絲剝繭取出了有用數據,建立一個 d3 的應用(d3.js,一個 JavaScript 庫)掛載在 github 的網頁上。一個坐標軸上顯示常規賽的統計信息,另一個坐標軸上顯示季後賽的統計信息,還有一個45度的直線表示在兩種情況下的相同行為方式,可以選擇一個數據並以交互的方式在圖標上看團隊的數據移動。數據表明最終在季後賽的隊伍,相比常規賽,運動趨勢數據中多了 15% 的運球,10% 站立,少了 4% 的傳球和 4% 的持球得分。也就是說,球員在季後賽往往會更自私地打球。

問起他們為什麼參加 NBA 編程馬拉松,其中一名隊員表示,他看到了在這裡的學習機會。作為一個NBA的數據控,他對比賽背後的教練方法和數據分析非常感興趣,通過這個活動可以認識更多在數據分析領域中傑出的人。

項目在線演示地址:

NBA Hackathon Visualization

另外他們的 Github 上還發布了另一個關於場上換人模式的分析項目:

GitHub - alexwainger/NBASubstitutionPatterns: Visualizing substitution patterns across teams and time

如今像籃球這樣的運動都已經開始大量地依賴計算機程序做數據分析,可想而知,還有什麼領域可以置身事外。如果現在還覺得,不是程序員,不是搞理工科的,是否懂計算機懂編程都無所謂,那這恐怕是個很危險的想法。不要再只顧著抱怨別人用腳本搶走你的月餅了,或許不久後的某一天,計算機就會搶走你的飯碗……

附英文報道:The NBA』s first hackathon: How is the future coming for the league?

其他文章及回答:

爆款遊戲《貪吃蛇大作戰》的 Python 實現 - Crossin的編程教室 - 知乎專欄

Python 與 Excel 不得不說的事 - Crossin的編程教室 - 知乎專欄

想用 Python 做數據分析?先玩玩這個再說 - Crossin的文章 - 知乎專欄

用 Python 實現你的量化交易策略 - Crossin的文章 - 知乎專欄

學習編程的過程中可能會走哪些彎路,有哪些經驗可以參考? - Crossin 的回答

你是如何自學 Python 的? - Crossin 的回答

Python 抓取網頁亂碼原因分析 - Crossin的編程教室 - 知乎專欄

Crossin的編程教室

微信ID:crossincode

論壇:Crossin的編程教室

QQ群:465369080


推薦閱讀:

憋了個大招
製作業務數據地圖竟不需要編程,請速來領取!
ggplot2多維分面多圖層對應規則
在Power Pivot里計算期初期末庫存
猴子訓練營:學習數據分析的意義和實踐計劃

TAG:Python | 数据分析 | NBA |