NBA 比赛结果预测

一、项目背景

1.数据分析

数据分析是一个检查、清理、转换和建模数据的过程,其目标是发现有用的信息、得出结论并支持决策制定。数据分析具有多个方面和方法,包括各种名称下的多种技术,并用于不同的商业、科学和社会科学领域。

在当今的商业世界中,数据分析在使决策更加科学和帮助企业更有效地运作方面发挥了作用。

2.数据分析流程

  • 数据采集

  • 数据存储

  • 数据提取

  • 数据挖掘

  • 数据分析

  • 数据展示

  • 数据应用

3.Jupyter

Jupyter是一个非营利组织,旨在“为数十种编程语言的交互式计算开发开源软件,开放标准和服务”。2014年由Fernando Pérez从IPython中衍生出来,Jupyter支持几十种语言的执行环境。

Jupyter项目开发并支持交互式计算产品Jupyter Notebook(文件格式是.ipynb文件)、JupyterHub和JupyterLab。

4.数据详情

数据来源:Basketball Statistics & History of Every Team & NBA and WNBA Players | Basketball-Reference.com

以下表格来自Seasons导航栏下的summary,下拉至Per Game Stats数据表,选择Share & Export下的Get table as CSV (for Excel),选择Team、Opponent获得两张表。

2021-2022 Team Per Game Stats.csv 每支队伍在每场比赛中的表现统计,各字段含义如下:

字段

含义

Rk

排名

Team

队伍

G

参与的比赛场数

MP

平均每场比赛进行的时间

FG

投球命中次数

FGA

投射次数

FG%

投球命中次数

3P

三分球命中次数

3PA

三分球投射次数

3P%

三分球命中率

2P

二分球命中次数

2PA

二分球投射次数

2P%

二分球命中率

FT

罚球命中次数

FTA

罚球投射次数

FT%

罚球命中率

ORB

进攻篮板球

DRB

防守篮板球

TRB

篮板球总数

AST

助攻

STL

抢断

BLK

封盖

TOV

失误

PF

个犯

PTS

得分

2021-2022Opponent Per Game Stats.csv 每支队伍在每场比赛中遇到的对手表现统计,各字段含义同上。

继续下拉至Advanced Stats数据表,选择Share & Export下的Get table as CSV (for Excel)

2021-2022Miscellaneous Stats.csv:每支队伍的综合统计数据,各字段含义如下:

数据项

数据含义

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)

简易评级系统,根据他们的积分差异对球队进行排名

ORtg (Offensive Rating)

每 100 个比赛回合中的进攻比例

DRtg (Defensive Rating)

每 100 个比赛回合中的防守比例

NRtg (Net Rating)

进攻效率ORtg-防守效率DRtg

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)

对手的罚球次数占投射次数的比例

Arena

比赛场;竞技场

Attend.

出席观众人数

Attend./G

平均每场比赛的出席观众人数

以下两张表数据来源于Seasons导航栏下的Schedule and Results,选择Share & Export下的Get table as CSV (for Excel)。

2021-2022_result.csv 每场比赛的数据,其中包括三个字段:

字段

含义

WTeam

比赛胜利队伍

LTeam

失败队伍

WLoc

胜利队伍一方所在的为主场或是客场

2022-2023_schedule.csv 比赛的安排,其中包括两个字段:

字段

含义

Vteam

客场作战队伍

Hteam

主场作战队伍

二、项目目标

1.主要目标

利用训练好的模型在2022-2023年的比赛数据中进行预测,对每一场新的比赛进行胜负方判断,最好能返回胜方胜利的概率。

2.目标分解

  • 读取数据

  • 分析内容

  • 构建特征

  • 建立模型

  • 训练样本

  • 预测结果

三、技术选型

1.问题:必须使用Jupyter Notebook吗?

推荐使用,这是数据分析下通用工具,建议掌握。

2.问题:机器学习使用什么工具?

推荐使用sklearn,sklearn是基于 Python 语言的机器学习工具,Sklea是处理机器学习 (有监督学习和无监督学习) 的包。

它建立在 NumPy, SciPy, Pandas 和 Matplotlib 之上,其主要集成了数据预处理、数据特征选择,sklearn有六个任务模块和一个数据引入模块:

  • 有监督学习的分类任务

  • 有监督学习的回归任务

  • 无监督学习的聚类任务

  • 无监督学习的降维任务

  • 数据预处理任务

  • 模型选择任务

  • 数据引入

官网网站:scikit-learn: machine learning in Python — scikit-learn 1.1.3 documentation

安装

pip install -U scikit-learn

四、课堂要求

1.提交项目结构

main.ipynb      数据分析文件

2.标注核心算法函数位置

# 逻辑回归 位于main.ipynb文件 第5个代码块中from sklearn import linear_model
model = linear_model.LogisticRegression(max_iter=15000)
model.fit(X, y)

3.程序运行效果截图

NBA比赛结果预测 # 编程大事件 # 嵩天 # python #相关推荐

  1. NBA比赛结果预测项目

    NBA比赛结果预测项目 文章目录 NBA比赛结果预测项目 项目目的: 项目背景 项目相关知识: ELO算法介绍 **Python体育数据处理常用函数** lambda函数 map()函数 filter ...

  2. python 比赛成绩预测_大数据新研究:用六个月的跑步记录准确预测马拉松完赛成绩...

    随着疫情得到控制,各个城市的马拉松比赛又开始相继恢复.从线上马拉松终于可以再次到各个城市不同的赛道上奔跑,无疑是跑者的福音.积压了大半年的情绪,也激发了跑者更高的训练热情,带来了更多跑量的累积. 而准 ...

  3. 关于我用chat gpt生成了一篇nba比赛前瞻预测文章,大家觉得怎么样!

    4月8日,NBA常规赛将迎来洛杉矶湖人对阵菲尼克斯太阳的比赛.作为联盟中两支实力强劲的球队,这场比赛将是一场值得期待的对决.目前战绩方面,湖人队以31胜18负的战绩排名西部第5位,而太阳队则以38胜1 ...

  4. 【蓝桥杯集训100题】scratch绘制蜘蛛网 蓝桥杯scratch比赛专项预测编程题 模拟练习题第05题

    目录 scratch绘制蜘蛛网 一.题目要求 1.编程实现 2.具体要求 二.案例分析

  5. 【蓝桥杯集训100题】scratch生日蛋糕 蓝桥杯scratch比赛专项预测编程题 模拟练习题第03题

    目录 scratch生日蛋糕 一.题目要求 1.准备工作 2.编程实现 3.具体要求

  6. 【蓝桥杯集训100题】scratch勾股数 蓝桥杯scratch比赛专项预测编程题 集训模拟练习题第20题

    目录 scratch勾股数 一.题目要求 1.编程实现 2.具体要求 二.案例分析

  7. 【蓝桥杯集训100题】scratch猫鼠大战 蓝桥杯scratch比赛专项预测编程题 集训模拟练习题第11题

    目录 scratch猫鼠大战 一.题目要求 1.准备工作 2.编程实现 3.具体要求

  8. 【蓝桥杯集训100题】scratch从小到大排序 蓝桥杯scratch比赛专项预测编程题 集训模拟练习题第17题

    目录 scratch从小到大排序 一.题目要求 1.准备工作 2.编程实现

  9. 【蓝桥杯集训100题】scratch加减大师 蓝桥杯scratch比赛专项预测编程题 集训模拟练习题第10题

    scratch加减大师 一.题目要求 1.准备工作 导入背景库中的"room1" 导入角色库中的"Dog1"."Pico". 2.编程实现 ...

最新文章

  1. html页面sql注入,再谈SQL注入入侵动网SQL版-ASP TO HTML WITH TEMPLATE3
  2. Java复习二 基本数据类型与变量和常量
  3. Android test---robotium----简单例子
  4. Normal-Inverse Gamma Mixture简介
  5. 测试GPU的材质填充率
  6. 带防夹功能的升降器原理_桌面光污染必不可少——骨伽Bunker RGB鼠标线夹
  7. ubuntu安装配置jdk
  8. HDU 4115 Eliminate the Conflict(2-sat)
  9. 鸟哥Linux计算退伍时间,发现《鸟哥的Linux基础篇》中有个脚本还能再完善点。...
  10. Unity 利用FFmpeg实现录屏、直播推流、音频视频格式转换、剪裁等功能
  11. Linux-4.4-x86_64 内核配置选项简介
  12. 数据结构问题解决2.1——单链表存储结构定义详细解释,struct LNode* next解释,为啥next定义成指针类型
  13. linux 配额不起作用,Linux 配额
  14. ROBOTSTUDIO学习
  15. tolower c语言,tolower()
  16. 诱惑视频木马样本态势
  17. JAVA IO必会概念
  18. 快递物流信息复打接口API代码-快递100
  19. asp.net师电子化信息库的设计与实现(源代码+论文)ASP.NET汽车销售管理系统的设计与开发(源代码+论文)
  20. 间歇性需求预测之Croston‘s method

热门文章

  1. 微信定向流量_微信沃卡发布 10元包300MB微信定向流量
  2. php正则取出后不保留左右,PHP 正则 如何匹配不出现某段字符串的写法!(保留备份)...
  3. 【Android】性能测试之获取Android流量数据
  4. mPEG-Epoxide MPEG-EP 甲氧基PEG环氧乙烷
  5. 如何进行产品设计,更能激发用户行为
  6. 《魔道祖师》第三季预告片首发为汪叽庆生
  7. 利用VBA代码解决Excel下拉菜单跳过空单元格的问题
  8. 生产者与消费者问题C语言实现
  9. 扫地机器人灰尘堵住_不怕脏更不怕累!这才是清理扫地机器人的正确姿势
  10. vivoS7e和vivoS6哪个好(参数对比还是新机优势大)