前言
利用Python预测一下NBA比赛结果。
主要思路
(1)数据选取
获取数据的链接为:
https://www.basketball-reference.com/
获取的数据内容为:
每支队伍平均每场比赛的表现统计;
每支队伍的对手平均每场比赛的表现统计;
综合统计数据;
2016-2017年NBA常规赛以及季后赛的每场比赛的比赛数据;
2017-2018年NBA的常规赛以及季后赛的比赛安排。
(2)建模思路
主要利用数据内容的前四项来评估球队的战斗力。
利用数据内容的第五项也就是比赛安排来预测每场比赛的获胜队伍。
利用方式为:
数据内容的前三项以及根据数据内容的第四项计算的Elo等级分作为每支队伍的特征向量。
Elo等级分介绍(相关文件中有):
为方便起见,假设获胜方提高的Elo等级分与失败方降低的Elo等级分数值相等。
另外,为了体现主场优势,主场队伍的Elo等级分在原有基础上增加100。
(3)代码流程
数据初始化;
计算每支队伍的Elo等级分(初始值1600);
基于数据内容前三项和Elo等级分建立2016-2017年常规赛和季后赛中每场比赛的数据集;
使用sklearn中的LogisticRegression函数建立回归模型;
利用训练好的模型对17-18年常规赛和季后赛的比赛结果进行预测;
将预测结果保存到17-18Result.CSV文件中。
开发工具
Python版本:3.5.4
相关模块:
pandas模块、numpy模块、sklearn模块以及一些Python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
使用演示
在cmd窗口运行Analysis_NBA_Data.py文件即可:
结果:
文章到这里就结束了,感谢你的观看,Python爬虫案例系列,下篇文章AI且mini版飞机大战。
为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
⑥ 两天的Python爬虫训练营直播权限
All done~点赞+评论~详见个人简介或者私信获取完整源代码。。