- 点音app最新版本
- 留学中介一般要收多少钱?
- 2023 年搜索引擎优化的 8 个最佳关键词研究工具(比较)
- 中国产业结构优化与升级的路径
- 出国旅游常用英语单词和短语,收藏后可以大胆走出国门旅游啦
- 抖音20.1.0版本
邮箱:demo@eyoucms.com
手机:13900001111
电话:400-123-4567
地址:广东省广州市天河区某某科技园
利用Python预测NBA比赛结果
关注「实验楼」,每天分享一个项目教程
NBA总决赛正在火热上演,而有数据的地方就有预测,本教程就教你使用Python预测NBA比赛的结果。
正文共:3240 字
预计阅读时间:8 分钟?
1.1 内容简介
不知道你是否朋友圈被刷屏过nba的某场比赛进度或者结果?或者你就是一个nba狂热粉,比赛中的每个进球,抢断或是逆转压哨球都能让你热血沸腾。除去观赏精彩的比赛过程,我们也同样好奇比赛的结果会是如何。因此本节课程,将给同学们展示如何使用nba比赛的以往统计数据,判断每个球队的战斗力,及预测某场比赛中的结果。
我们将基于2015-2016年的NBA常规赛及季后赛的比赛统计数据,预测在当下正在进行的2016-2017常规赛每场赛事的结果。
1.2 实验知识点
nba球队的计算
特征向量
逻辑回归
1.3 实验环境
python2.7
Xfce终端
1.4 实验流程
本次课程我们将按照下面的流程实现NBA比赛数据分析的任务:
获取比赛统计数据
比赛数据分析,得到代表每场比赛每支队伍状态的特征表达
利用**机器学习**方法学习每场比赛与胜利队伍的关系,并对2016-2017的比赛进行预测
1.5 代码获取
本次实验的源码可通过以下命令获得:
$ wget http://labfile.oss.aliyuncs.com/courses/782/prediction.py
2.1 比赛数据介绍
在本次实验中,我们将采用Basketball Reference.com中的统计数据。在这个网站中,你可以看到不同球员、队伍、赛季和联盟比赛的基本统计数据,如得分,犯规次数等情况,胜负次数等情况。而我们在这里将会使用2015-16 NBA Season Summary中数据。
在这个2015-16总结的所有表格中,我们将使用的是以下三个数据表格:
Team Per Game Stats:每支队伍平均每场比赛的表现统计
| 数据名 | 含义 || ------------------------------------ | -------------- || Rk -- Rank | 排名 || G -- Games | 参与的比赛场数(都为82场) || MP -- Minutes Played | 平均每场比赛进行的时间 || FG--Field Goals | 投球命中次数 || FGA--Field Goal Attempts | 投射次数 || FG%--Field Goal Percentage | 投球命中次数 || 3P--3-Point Field Goals | 三分球命中次数 || 3PA--3-Point Field Goal Attempts | 三分球投射次数 || 3P%--3-Point Field Goal Percentage | 三分球命中率 || 2P--2-Point Field Goals | 二分球命中次数 || 2PA--2-point Field Goal Attempts | 二分球投射次数 || 2P%--2-Point Field Goal Percentage | 二分球命中率 || FT--Free Throws | 罚球命中次数 || FTA--Free Throw Attempts | 罚球投射次数 || FT%--Free Throw Percentage | 罚球命中率 || ORB--Offensive Rebounds | 进攻篮板球 || DRB--Defensive Rebounds | 防守篮板球 || TRB--Total Rebounds | 篮板球总数 || AST--Assists | 助攻 || STL--Steals | 抢断 || BLK -- Blocks | 封盖 || TOV -- Turnovers | 失误 || PF -- Personal Fouls | 个犯 || PTS -- Points | 得分 |
Opponent Per Game Stats:所遇到的对手平均每场比赛的统计信息,所包含的统计数据与Team Per Game Stats中的一致,只是代表的该球队对应的对手的
Miscellaneous Stats:综合统计数据
数据项 | 数据含义 |
---|---|
Rk (Rank) | 排名 |
Age | 队员的平均年龄 |
W (Wins) | 胜利次数 |
L (Losses) | 失败次数 |
PW (Pythagorean wins) | 基于毕达哥拉斯理论计算的赢的概率 |
PL (Pythagorean losses) | 基于毕达哥拉斯理论计算的输的概率 |
MOV (Margin of Victory) | 赢球次数的平均间隔 |
SOS (Strength of Schedule) | 用以评判对手选择与其球队或是其他球队的难易程度对比,0为平均线,可以为正负数 |
SRS (Simple Rating System) | 3 |
ORtg (Offensive Rating) | 每100个比赛回合中的进攻比例 |
DRtg (Defensive Rating) | 每100个比赛回合中的防守比例 |
Pace (Pace Factor) | 每48分钟内大概会进行多少个回合 |
FTr (Free Throw Attempt Rate) | 罚球次数所占投射次数的比例 |
3PAr (3-Point Attempt Rate) | 三分球投射占投射次数的比例 |
TS% (True Shooting Percentage) | 二分球、三分球和罚球的总共命中率 |
eFG% (Effective Field Goal Percentage) | 有效的投射百分比(含二分球、三分球) |
TOV% (Turnover Percentage) | 每100场比赛中失误的比例 |
ORB% (Offensive Rebound Percentage) | 球队中平均每个人的进攻篮板的比例 |
FT/FGA | 罚球所占投射的比例 |
eFG% (Opponent Effective Field Goal Percentage) | 对手投射命中比例 |
TOV% (Opponent Turnover Percentage) | 对手的失误比例 |
DRB% (Defensive Rebound Percentage) | 球队平均每个球员的防守篮板比例 |
FT/FGA (Opponent Free Throws Per Field Goal Attempt) | 对手的罚球次数占投射次数的比例 |
毕达哥拉斯定律:
我们将用这三个表格来评估球队过去的战斗力,另外还需2015-16 NBA Schedule and Results中的2015~2016年的nba常规赛及季后赛的每场比赛的比赛数据,用以评估(在之后的实验小节中解释)。在中按照从常规赛至季后赛的时间。列出了2015年10月份至2016年6月份的每场比赛的比赛情况。
可在上图中,看到2015年10月份的部分比赛数据。在每个*Schedule*表格中所包含的数据为:
数据项 | 数据含义 |
---|---|
Date |
- 上一篇:(现行有效)北京市昌平区人民政府关于印发《昌平区优化住房支持政策服务保障人才发展实施办法(试行)》的通知(昌政发〔2021〕3号)
- 下一篇:12月07日开拓者vs勇士数据统计-虎扑NBA原创报道
-
2018-05-18CMS是如何应运而生的?
-
2018-05-18网站建设,静态页面和动态页面如何选择
-
2018-05-18网站建设的五大核心要素
-
2018-05-17一文读懂互联网女皇和她的报告:互联网领域的投资圣经、选股指南
-
2018-05-17新手科普文!什么是用户界面和体验设计?
-
2018-05-17用户界面设计和体验设计的差别