30萬行數據,Python 分析科比20年職業生涯

2020-12-05 騰訊網

作者 |高羊羊羊羊羊楊

來源 | CSDN博客

頭圖 | 付費下載自視覺中國

出品 | CSDN(ID:CSDNnews)

前段時間,湖人當家球星 科比·布萊恩特不幸遇難。這對於無數的球迷來說無疑使晴天霹靂, 他逆天終究也沒能改命,但命運也從來都沒改得了他,曼巴精神會一直延續下去。隨著大數據時代的到來,好像任何事情都可以和大數據這三個字掛鈎。早在很久以前,大數據分析就已經廣泛的應用在運動員職業生涯規劃、醫療、金融等方面,在本文中將會使用Python對球星科比進行對維度分析,向 「老大」 致敬!

前景提要

那天,是2020年1月27日凌晨,我失眠了,足足在床上打滾到4點鐘還是睡不著,解鎖屏幕,盯著刺眼的手機打算刷刷微博,但卻得到了一個令人震驚的消息:球星科比不幸遇難。換做是往常,我當然是舉報三連,這種標題黨罪有應得,但卻刷到了越來越多條類似的消息,直到看到官方發布的消息。

正如我的文案所說,我沒有見過凌晨四點的洛杉磯,可我在凌晨四點聽聞了你去世的消息,1978-2020。

作為球迷,我們能做的只有惋惜與緬懷。不散播謠言,不消費 「曼巴精神」

數據獲取

來源:NBA官方提供了的科比布萊恩特近二十年職業生涯數據資料集(數據量比較龐大,大約有3萬行)

數據處理

翻閱文檔時不難發現其中有很多空缺值,簡單粗暴的方式是直接刪除有空值的行,但為了樣本完整性與預測結果的正確率。

首先我們對投籃距離做一個簡單的異常值檢測,這裡採用的是箱線圖呈現

我們將得到這樣的結果:

根據判斷,該列數據有68個異常值,這裡採取的操作是將這些異常值所在行刪除,其他列屬性同理。

數據整合

將數據導入,並按我們的需求對數據進行合併、添加新列名的操作

運行有如下結果:

看起來還是一切正常的

繪製投籃嘗試圖

根據不同的時間變化(從比賽開始)來繪製投籃的嘗試圖

這裡我們將用到matplotlib包

看下效果:

可以看出隨著比賽時間的進行,科比的出手次數呈現增長狀態。

繪製命中率對比圖

這裡們將做一個對比來判斷一下科比的命中率如何

看一下效果怎麼樣

分析可得出科比的投籃命中率大概徘徊在0.4左右,但這並不是我們想要的效果

為了進一步對數據進行挖掘,我們需要使用一些算法了。

GMM聚類

那麼 什麼是GMM聚類呢?

GMM是高斯混合模型(或者是混合高斯模型)的簡稱。大致的意思就是所有的分布可以看做是多個高斯分布綜合起來的結果。這樣一來,任何分布都可以分成多個高斯分布來表示。

因為我們知道,按照大自然中很多現象是遵從高斯(即正態)分布的,但是,實際上,影響一個分布的原因是多個的,甚至有些是人為的,可能每一個影響因素決定了一個高斯分布,多種影響結合起來就是多個高斯分布。(個人理解)

因此,混合高斯模型聚類的原理:通過樣本找到K個高斯分布的期望和方差,那麼K個高斯模型就確定了。在聚類的過程中,不會明確的指定一個樣本屬於哪一類,而是計算這個樣本在某個分布中的可能性。

高斯分布一般還要結合EM算法作為其似然估計算法。

球場可視化

這裡借鑑了MichaelKrueger的excelent腳本裡的draw_court()函數

draw_court()函數

二維高斯圖

建立繪製畫二維高斯圖的函數

Draw2DGaussians()

下面開始繪製2D高斯投籃次數圖,圖中的每個橢圓都是離高斯分布中心2.5個標準差遠的計數,每個藍色的數字代表從該高斯分布觀察到的所佔百分比

看一下成果:

我們可以看到,著色後的2D高斯圖中,科比在球場的左側(或者從他看來是右側)做了更多的投籃嘗試。這可能是因為他是右撇子。此外,我們還可以看到,大量的投籃嘗試(16.8%)是直接從籃下進行的,5.06%的額外投籃嘗試是從非常接近籃下的位置投出去的。

它看起來並不完美,但確實顯示了一些有用的東西

對於繪製的每個高斯集群的投籃精度,藍色數字將代表從這個集群中獲取到的準確性,因此我們可以了解哪些是容易的,哪些是困難的。

對於每個集群,計算一下它的精度並繪圖

看一下效果圖

我們可以清楚地看到投籃距離和精度之間的關係。

繪製二維時空圖

另一個有趣的事實是:科比不僅在右側做了更多的投籃嘗試(從他看來的那邊),而且他在這些投籃嘗試上更擅長

現在讓我們繪製一個科比職業生涯的二維時空圖。在X軸上,將從比賽開始時計時;在y軸上有科比投籃的集群指數(根據集群精度排序);圖片的深度將反映科比在那個特定的時間從那個特定的集群中嘗試的次數;圖中的紅色垂線分割比賽的每節

看一下運行結果:

集群按精度降序排序。高準確度的投籃在最上面,而低準確度的半場投籃在最下面,我們現在可以看到,在第一、第二和第三節中的「最後一秒出手」實際上是從很遠的地方「絕殺」, 然而,有趣的是,在第4節中,最後一秒的投籃並不屬於「絕殺」的投籃群,而是屬於常規的3分投籃(這仍然比較難命中,但不是毫無希望的)。

在以後的分析中,我們將根據投籃屬性來評估投籃難度(如投籃類型和投籃距離)

下面將為投籃難度模型創建一個新表格

根據FeaturesDB表構建模型,並確保它不會過度匹配(即訓練誤差與測試誤差相同)

使用一個額外的分類器

建立一個簡單的模型,並確保它不超載

在這裡想談談科比·布萊恩特在決策過程中的一些問題;為此,我們將收集兩組不同的效果圖,並分析它們之間的差異:

在一次成功的投籃後馬上繼續投籃

在一次不成功的投籃後馬上馬上投籃

考慮到科比投進或投失了最後一球,我收集了一些數據

柱狀圖

為他們繪製「上次投籃後的時間」的柱狀圖

看一下運行結果:

從圖中可以看出:科比投了一個球之後有些著急去投下一個,而圖中的一些比較平緩的值可能是球權在另一隻隊伍手中,需要一些時間來奪回。

累計柱狀圖

為了更好地可視化柱狀圖之間的差異,我們來看看累積柱狀圖。

運行效果如下:

雖然可以觀察到密度有差異 ,但好像不太清楚,所以還是轉換成高斯格式來顯示數據吧

讓我們來看看最終結果:

結論

現在很明顯,在投丟一個球後,科比更可能直接從籃下投出下一球。在圖中也可以看出,科比在投藍進球後,下一球更有可能嘗試投個三分球,但本次案例中並沒有有效的數據可以證明科比有熱手效應。不難看出,科比還是一個注重籃下以及罰球線周邊功夫的球員,而且是一個十分自信的領袖,不愧為我們的老大!

需要改進的地方

本次獲取到的數據集十分龐大,裡面的內容也很充足,甚至包括了每一種投籃姿勢、上籃姿勢的詳細數據,對於本數據中還未挖掘到的信息各位讀者如果有興趣可以自行嘗試,相信一定會收穫滿滿!

註:可能本次分析中存在一些問題,還請各位讀者指正,感謝閱讀。

【End】

你點的每一個在看,我認真當成了喜歡

相關焦點

  • 30萬行數據,Python 分析科比二十年職業生涯
    隨著大數據時代的到來,好像任何事情都可以和大數據這三個字掛鈎。早在很久以前,大數據分析就已經廣泛的應用在運動員職業生涯規劃、醫療、金融等方面,在本文中將會使用Python對球星科比進行對維度分析,向 「老大」 致敬!
  • 科比20年籃球生涯,拿到多少個周最佳和月最佳?
    20年籃球生涯,拿到多少個周最佳和月最佳?  科比-布萊恩特1996年黃金一代的代表人物,首輪第13順位進入聯盟,職業生涯20載,7次打進總決賽,5奪NBA總冠軍,2個FMVP、1個常規賽MVP和兩屆得分王,以及留下了數不清的無數紀錄。
  • Smith:鄧肯的職業生涯比科比的更出色
    在談及蒂姆-鄧肯與科比-布萊恩特時,Stephen A. Smith表示:「儘管我非常尊重科比-布萊恩特,但我還是不得不說,蒂姆-鄧肯比起科比-布萊恩特擁有更出色的職業生涯。」對此,Stephen A. Smith補充道:「鄧肯在聯盟中擁有如此連續(很少缺陣)且高水平的職業生涯,大衛-羅賓遜更是因為鄧肯的出色表現而獲得了一個總冠軍。
  • 如果把科比的職業生涯倒放,NBA又將多一個傳奇的...
    在進入聯盟後第一年的高歌猛擊後,科比遇到了所有職業球員最大的敵人——傷病。兩個賽季合計出場41場,但在這僅有的四十餘場比賽中,場均得分也超過了20,但對於科比的跟腱,似乎已然為他的職業生涯蒙上了一層陰影。
  • 20年效力同一支球隊的球員 他們的職業生涯都是傳奇
    在職業體育界,一名球員能夠有長達20年的職業生涯就已經十分罕見,而20年還效力於同一支球隊更屬難得。在過去的20餘年時間裡,北美四大職業聯賽中共有11名球員為同一支球隊效力了20個賽季,其中科比·布萊恩特和肖恩·多恩是最近兩位躋身這一份名單中的球星。
  • 盤點因女人影響職業生涯球星,科比入選,首位巨大爭議
    讓我們盤點因為女人而影響籃球職業生涯的球星。第五位:TT湯普森TT湯普森作為一個不錯的內線藍領球員,實力是相當不錯的。可以怎麼說,如果沒有TT湯普森,詹姆斯也很難在那個時候帶領騎士隊獲得一個總冠軍。隨之TT湯普森也是如願得到一份大合同。可是搭上了科勒卡戴珊以後,TT湯普森如今已經完全被騎士隊所拋棄了,從此他也是成為高薪低能的代名詞。
  • 為什麼數據分析要學習Python?
    潛力巨大的數據分析崗位在資訊時代的今天,數據推動業務發展、數據輔助業務決策早已成為大勢所向,而順應大數據時代號召的人,薪資待遇自然也是讓人羨慕不已——數據分析師確實是高薪職業,大部分公司提供的待遇基本上是10K往上走;且隨著工作經驗的累積和技能樹的完善,薪資超過
  • 04年總決賽湖人4-1不敵活塞,奧尼爾場均27分,那科比什麼數據?
    最近,奧尼爾在一檔節目中接受採訪時表示,04年我聽到如果總決賽輸給活塞,我就得走人;之後湖人輸掉了總決賽,奧尼爾也在夏天被交易到了熱火隊。04年,被譽為奧尼爾職業生涯的分水嶺,那一年他31歲,常規賽場均得到21.5分11.5籃板3助攻2.5個蓋帽,相比於02-03賽季,奧尼爾得分下降了6分。季後賽,奧尼爾場均也只有21.5分13.2籃板,但是在總決賽,奧尼爾的表現時候統治級別的。2004年總決賽湖人對陣活塞,湖人是被看好的那一方,因為活塞沒有那種超級巨星!
  • 錫安:想生涯效力鵜鶘 像科比和德克那樣一人一城
    但今年的狀元秀錫安對此卻並不感興趣,他的表態想必會讓鵜鶘隊感到高興,錫安表示他想整個職業生涯都在鵜鶘隊效力。「隨著我慢慢成長,我喜歡科比和德克所做的事情,整個生涯都在一支球隊效力,當然,有些球員也希望如此,但他們最終被交易了。」「我的想法就是整個職業生涯都在鵜鶘打球,假設一下,我不會因為我討厭這個地方了就要離開這裡,生意就是生意。」科比和德克-諾維斯基都擁有著極為成功的職業生涯,科比在湖人隊效力了20個賽季,而諾天王則為獨行俠(原小牛)隊效力了21個賽季。
  • 06年季後賽G4,納什22+11,奧多姆25分,科比雙絕殺什麼數據?
    科比20年的職業生涯裡,取得過無數證明自己的個人榮譽,也打出過無數令球迷荷爾蒙爆發的名場面。黑曼巴單場拿過81分,對飆過阿里納斯,在韋德頭上絕殺過,總決賽擊退過湖人宿敵凱爾特人隊。但老球迷,肯定不會忘記這個畫面:06年季後賽雙絕殺太陽。04-05賽季,在休賽期奧尼爾東遊熱火後,湖人內部亂成了一堆爛攤子。
  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python視頻教程 2020年07月08日 11:00作者:黃頁編輯:黃頁 本課程為
  • 別了科比,我們不會忘記
    科比那標誌性的後仰跳投、華麗轉身、犀利突破,曾經成為多少年輕人的模仿對象。他的職業生涯充滿了拼搏與汗水、堅毅與決絕、質疑與證明、鮮花與掌聲,他的名字不僅譽滿籃壇,更外溢出一種超越籃球的知名度和影響力,這不僅由於他職業生涯中光輝璀璨的赫赫戰績,更是因為他不懈拼搏、自律自強、永不服輸的堅毅精神。
  • 科比直升機遇難後,妻子瓦妮莎將獲得多少賠償金?數額很離譜
    科比身為NBA歷史上最偉大的籃球巨星之一,在前段時間因為在搭乘直升飛機時遭遇了意外,最終與二女兒等其他9人在內的全部乘客都遇難了,如今科比的追悼會已經在湖人隊主場斯臺普斯中心順利舉行,身為科比的妻子,她出席了科比的追悼會,並發表了感人至深的講話,其次,籃球之神喬丹以及科比的昔日隊友奧尼爾也出席了科比的追悼會
  • 科比生涯最經典的5大語錄!最後1個已經成為勵志名言
    科比20年戎馬生涯,幫助球隊5次奪冠,自己也是步入了超巨行列,他在分衛的地位,也是僅次於喬丹。科比的離開我們都很難過,哪怕不是他的球迷,聽到他意外離世,內心都有說不出的感覺。人這輩子沒有多少個20年,他能成為那麼多人,人生中最美好年紀的青春回憶,他的離開有這麼大轟動,看到這你也許就明白了。
  • 職業生涯規劃:組織社會環境分析
    職業生涯規劃是指針對個人職業選擇的主觀和客觀因素進行分析和測定,確定個人的奮鬥目標並努力實現這一目標的過程。換句話說,職業生涯規劃要求根據自身的興趣、特點,將自己定位在一個最能發揮自己長處的位置,選擇最適合自己能力的事業。職業定位是決定職業生涯成敗的最關鍵的一步,同時也是職業生涯規劃的起點。  1.自我評估。
  • 壓鯊魚石佛拿MVP,38歲讓科比打出最高效率
    38歲加盟湖人時,也讓科比打出最高效率,可以說是個完美的一號位。1996年夏天,太陽用第15順位選中了納什,打了2年替補之後,納什就被送到了小牛隊。聯手諾維茨基和芬利,組成了三駕馬車的組合,一直到28歲的時候,納什才第一次入選全明星,可以說是大器晚成。
  • 最諷刺的五張NBA雜誌封面:前面4人成笑柄,科比20年後預言成真?
    最諷刺的五張NBA雜誌封面:前面4人成笑柄,科比20年後預言成真?在NBA這個商業市場上,充斥著大量的金錢味道,而媒體也喜歡用一些噱頭對一個剛出道的新秀進行包裝。比如某某某是哪位NBA巨星的模板,他為成為下一個誰誰誰!
  • 一個成功的數據分析師的職業生涯
    數據分析師做什麼?數據分析員收集,處理和執行數據的統計分析,即使數據以某種方式或其他方式有用。它們幫助其他人做出正確的決策,並優先處理已收集的原始數據,以便使用某些公式和應用正確的算法使工作更輕鬆。如果你對數字,代數函數充滿熱情,並喜歡與其他人分享你的工作,那麼你將成為數據分析師。
  • 有多少科比球迷是路(黑)轉粉?看到他的手指才明白偉大的含義
    科比在職業生涯第三年才真正拿到首發位置,對喬幫主的挑戰展現了「小飛俠」的年少輕狂,三連冠讓世人真正記住了這個毛頭小夥子,這個將狀元艾佛森斬落馬下的13號秀,這個用胯下扣籃拿到扣籃王的8號,這個名字怪異的小夥(kobe譯為神戶牛肉)。
  • 科比81分詹姆斯26+10湖人18分大勝!14年後他還沒進名人堂就走了
    北京時間2020年1月27日,可能很多人都還在睡夢中為武漢新型肺炎的眾多患者祈禱祝福之時,NBA方面卻是傳來驚天噩耗,前NBA傳奇巨星、湖人名宿科比-布萊恩特在一起直升機墜毀事故中不幸身亡,享年41歲。