利用Python第三方庫(kù)實(shí)現(xiàn)預(yù)測(cè)NBA比賽結(jié)果
主要思路
(1)數(shù)據(jù)選取
獲取數(shù)據(jù)的鏈接為:
https://www.basketball-reference.com/
獲取的數(shù)據(jù)內(nèi)容為:
每支隊(duì)伍平均每場(chǎng)比賽的表現(xiàn)統(tǒng)計(jì);
每支隊(duì)伍的對(duì)手平均每場(chǎng)比賽的表現(xiàn)統(tǒng)計(jì);
綜合統(tǒng)計(jì)數(shù)據(jù);
2016-2017年NBA常規(guī)賽以及季后賽的每場(chǎng)比賽的比賽數(shù)據(jù);
2017-2018年NBA的常規(guī)賽以及季后賽的比賽安排。
(2)建模思路
主要利用數(shù)據(jù)內(nèi)容的前四項(xiàng)來評(píng)估球隊(duì)的戰(zhàn)斗力。
利用數(shù)據(jù)內(nèi)容的第五項(xiàng)也就是比賽安排來預(yù)測(cè)每場(chǎng)比賽的獲勝隊(duì)伍。
利用方式為:
數(shù)據(jù)內(nèi)容的前三項(xiàng)以及根據(jù)數(shù)據(jù)內(nèi)容的第四項(xiàng)計(jì)算的Elo等級(jí)分作為每支隊(duì)伍的特征向量。
Elo等級(jí)分介紹(相關(guān)文件中有):

為方便起見,假設(shè)獲勝方提高的Elo等級(jí)分與失敗方降低的Elo等級(jí)分?jǐn)?shù)值相等。
另外,為了體現(xiàn)主場(chǎng)優(yōu)勢(shì),主場(chǎng)隊(duì)伍的Elo等級(jí)分在原有基礎(chǔ)上增加100。
(3)代碼流程
數(shù)據(jù)初始化;
計(jì)算每支隊(duì)伍的Elo等級(jí)分(初始值1600);
基于數(shù)據(jù)內(nèi)容前三項(xiàng)和Elo等級(jí)分建立2016-2017年常規(guī)賽和季后賽中每場(chǎng)比賽的數(shù)據(jù)集;
使用sklearn中的LogisticRegression函數(shù)建立回歸模型;
利用訓(xùn)練好的模型對(duì)17-18年常規(guī)賽和季后賽的比賽結(jié)果進(jìn)行預(yù)測(cè);
將預(yù)測(cè)結(jié)果保存到17-18Result.CSV文件中。
開發(fā)工具
**Python版本:**3.5.4
相關(guān)模塊:
pandas模塊、numpy模塊、sklearn模塊以及一些Python自帶的模塊。
環(huán)境搭建
安裝Python并添加到環(huán)境變量,pip安裝需要的相關(guān)模塊即可。
使用演示
在cmd窗口運(yùn)行Analysis_NBA_Data.py文件即可:

結(jié)果:

代碼參考http://www.dhdzp.com/article/215291.htm
到此這篇關(guān)于利用Python實(shí)現(xiàn)預(yù)測(cè)NBA比賽結(jié)果的文章就介紹到這了,更多相關(guān)Python預(yù)測(cè)NBA比賽結(jié)果內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tensorflow實(shí)現(xiàn)softma識(shí)別MNIST
這篇文章主要為大家詳細(xì)介紹了tensorflow實(shí)現(xiàn)softma識(shí)別MNIST,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
使用Python進(jìn)行數(shù)獨(dú)求解詳解(二)
對(duì)于利用Python求解數(shù)獨(dú),我們可以采用回溯算法實(shí)現(xiàn)一個(gè)簡(jiǎn)單的版本。本文將此基礎(chǔ)上,通過改進(jìn)來提升數(shù)獨(dú)問題求解算法的性能。需要的可以參考一下2022-02-02
利用python實(shí)現(xiàn)flappy bird 游戲(完整代碼)
python 中 pygame模塊能讓我們很方便的編寫游戲,16年我用python 仿制了flappy bird 游戲,下面是游戲的完整代碼以及素材,分享給大家2021-11-11
Python一直報(bào)錯(cuò)SyntaxError:invalid?syntax的解決辦法
SyntaxError: invalid syntax 這個(gè)報(bào)錯(cuò)經(jīng)常遇見,但是總感覺自己的代碼沒有問題,根據(jù)報(bào)錯(cuò)提示的行也找不到錯(cuò)誤,這些情況以及解決方法都有哪些呢?這篇文章主要給大家介紹了關(guān)于Python一直報(bào)錯(cuò)SyntaxError:invalid?syntax的解決辦法,需要的朋友可以參考下2022-09-09
淺談Python中threading join和setDaemon用法及區(qū)別說明
這篇文章主要介紹了淺談Python中threading join和setDaemon用法及區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-05-05
python 插入Null值數(shù)據(jù)到Postgresql的操作
這篇文章主要介紹了python 插入Null值數(shù)據(jù)到Postgresql的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03

