越分析越发现自己做的片面-NBA数据分析小结

核桃 36 0

NBA各种数据(摘抄,持续补充~)

数据化可以使大家全面认识一个球星的能力值,这也成为越来越多球队选择球员的标准。当然了还可以学习英语,期待有一天可以听英语直播无压力~

Win Shares,胜利贡献值,简称WS,指一名球员为球队胜利所做的贡献。

PER,球员效率值,有一套复杂的计算方法,衡量一个球员的能力。

即NBA球员效率指数

NBA球员效率指数是由ESPN专家约翰·霍林格提出的球员价值评估数据体系。利用PER值,可以将球员所有表现记录下来,然后加权集成,综合而成,便可以对不同位置、不同年代的球员进行评估和比较。其计算公式为:[(得分数+助攻数+总篮板数+抢断数+盖帽数)-(投篮出手数-投篮命中数)-(罚球出手数-罚球命中数)-失误数]/球员的比赛场次[1]。这个依据的得出,可以综合判断球员良性表现,并且参照球员的球场不良表现,接着根据球员出场的次数来得出单场平均的效率表现。

TS的意义在于计算真实的出手次数,从而计算出真实的得分效率。

NBA的球员数据统计已经不能简单地用“细致”二字来形容了,除了常见的球员得分、上场时间、篮板、助攻等常规统计数据,还包括Per值、WS、OWS、DWS等高阶数据,这些数据能从各个方面衡量一个球员的素质。当然要想了解这些数据到底反应的是啥,我们还是从源语言着手学习最好。不同网站统计术语描述大同小异,我们以basketball reference()的数据统计术语为例。

1

最最最最常用的统计数据

了解这些,是一个球迷的基本素养。

打开百度App,看更多美图

红色方框的数据大家猜也猜个差不多,都是篮球比赛中最常见的统计数据。

G(Game):比赛出场数

PTS(Points Per Game):场均得分

TRB(Total Rebounds):总篮板数量

AST(Assist):助攻

FG%(Field Goal Percentage):投篮命中率

FG3%(3-point Field Goal Percentage):三分命中率

FT%(Free Throw Percentage)罚球命中率

eFG%(Effective Field Goal Percentage):有效命中率。

有效命中率计算公式:eFG%=(FG+0.5*3P)/FGA;FG- 投中球总数;3P- 三分数;FGA-投篮次数。有效命中率就是把三分球折成0.5个两分球计算,简单来说,比如我三分投的多,所以命中率比你低,但是平均每次出手我得分比你高,这大概就是这种高阶命中率的意义。

总的来看上图威少数据除了三分命中率略微感人,其它数据简直是禽兽,

场均三双指日可待!

2

常规统计数据

内容与上文有少量重复。

Age:年龄(别告诉我你知不知道+_+!!)

TM(team):球队

Lg(league):联盟

Pos(position):位置

PG(Point Guard):组织后卫

GS(Games Started):首发出场次数

MP(Minutes Played Per Game):场均上场时间

FG(Field Goals Per Game):场均命中数

FGA(Field Goal Attempts Per Game):场均投篮数

FG%(Field Goal Percentage):命中率

3P(3-Point Field Goals Per Game):三分球命中率

3PA (3-Point Field Goal Attempts Per Game):场均三分球投篮数

3P% (3-Point Field Goal Percentage):三分球命中率

2P (2-Point Field Goals Per Game):两分球命中数

2PA (2-Point Field Goal Attempts Per Game):场均两分投篮数

2P% (2-Point Field Goal Percentage):两分球命中率

eFG% (Effective Field Goal Percentage):有效命中率

FT (Free Throws Per Game):场均罚球命中数

FTA (Free Throw Attempts Per Game):场均罚球数

FT% (Free Throw Percentage):罚球命中率

ORB (Offensive Rebounds Per Game):场均进攻篮板数

DRB (Defensive Rebounds Per Game):场均防守篮板数

TRB (Total Rebounds Per Game):总篮板数

AST (Assists Per Game):场均助攻

STL (Steals Per Game):场均抢断

BLK (Blocks Per Game): 场均盖帽

TOV (Turnovers Per Game):场均失误

PF (Personal Fouls Per Game):场均个人犯规

PTS (Points Per Game):场均得分

高阶数据(advanced statistics)是在普通数据的基础上通过一定的数学模型计算得来的,有科学性,但也存在局限性!

PER -- Player Efficiency Rating

A measure of per-minute production standardized such that the league average is 15.

PER值(球员效率值), 衡量的是一个球员的每分钟贡献,联盟平均水平为15。

TS% -- True Shooting Percentage

A measure of shooting efficiency that takes into account 2-point field goals, 3-point field goals, and free throws.

真实命中率,综合考虑了2分球数据、3分球数据和罚球数据,能够体现球员把我得分机会的能力

3PAr -- 3-Point Attempt Rate

Percentage of FG Attempts from 3-Point Range

三分球占总出手数比例

FTr -- Free Throw Attempt Rate

Number of FT Attempts Per FG Attempt

ORB% -- Offensive Rebound Percentage

An estimate of the percentage of available offensive rebounds a player grabbed while he was on the floor.

进攻篮板率,球员在场上能抢到进攻篮板的概率。

DRB% -- Defensive Rebound Percentage

An estimate of the percentage of available defensive rebounds a player grabbed while he was on the floor.

防守篮板率,球员在场上能抢到防守篮板的概率。

TRB% -- Total Rebound Percentage

An estimate of the percentage of available rebounds a player grabbed while he was on the floor.

篮板率,球员在场上能抢到篮板的概

AST% -- Assist Percentage

An estimate of the percentage of teammate field goals a player assisted while he was on the floor.

助攻率,球员在场上送出助攻的概率。

STL% -- Steal Percentage

An estimate of the percentage of opponent possessions that end with a steal by the player while he was on the floor.

抢断率,球员在场上做出抢断的概率。

BLK% -- Block Percentage

An estimate of the percentage of opponent two-point field goal attempts blocked by the player while he was on the floor.

盖帽率,球员在场上送出盖帽的概率。

TOV% -- Turnover Percentage

An estimate of turnovers committed per 100 plays.

失误率,球员在场上送出失误的概率。

USG% -- Usage Percentage

An estimate of the percentage of team plays used by a player while he was on the floor.

球权使用率,球员在场上处理的球权数占球队球权数的比例。

OWS -- Offensive Win Shares

An estimate of the number of wins contributed by a player due to his offense.

进攻端胜利贡献值

DWS -- Defensive Win Shares

An estimate of the number of wins contributed by a player due to his defense.

防守端胜利贡献值

WS -- Win Shares

An estimate of the number of wins contributed by a player.

胜利贡献值

WS/48 -- Win Shares Per 48 Minutes

An estimate of the number of wins contributed by a player per 48 minutes (league average is approximately .100)

每48分钟胜利贡献值,联盟平均值约为100

OBPM -- Offensive Box Plus/Minus

A box score estimate of the offensive points per 100 possessions a player contributed above a league-average player, translated to an average team.

进攻端正负值

DBPM -- Defensive Box Plus/Minus

A box score estimate of the defensive points per 100 possessions a player contributed above a league-average player, translated to an average team.

防守端正负值

BPM -- Box Plus/Minus

A box score estimate of the points per 100 possessions a player contributed above a league-average player, translated to an average team.

正负值

VORP -- Value over Replacement Player

A box score estimate of the points per 100 TEAM possessions that a player contributed above a replacement-level (-2.0) player, translated to an average team and prorated to an 82-game season.

球员替换价值,球员在球场上起到的作用,与联盟该位置平均水平的球员的差异。

在哪能看到全面细致的 NBA 数据统计?

霍林格级别的数据需要自己导入球员数据每场比赛的PlayByPlay,在数据库里分析,需要一定的建模和数据统计的底子,这算是比较高端的数据玩法。

当然,现成的数据网站倒还是有不少,我说几个比较常用的。

最常用的数据网站,以基础数据为主。值得一提的是在网站内可以进行一些基本的数据查询和分析。 基本数据之外加入了诸如被盖率,加罚率,以及距离分析之类的详细数据,可以进行排序。 记录GameFlow即比赛走势,可以着重观察某个球员在某场比赛的某个时段发挥情况,以及整场比赛的比分走势。 大名鼎鼎的数据网站,里面所记录的数据很有自己的特色,每一项基本数据都有具体的细分。 专门记录匪夷所思的数据。 有关交易,伤病以及录用下放的记录,涉及年代久远。 涉及历年的新秀状况,体测数据和基本分析。 官方的数据统计工具,问世不久,前身是投篮热区统计,新版本增添了大量有趣的内容。 历年主客场上座率,数据可回溯至年。 有关国际联赛,夏季比赛,训练营以及D-League的人员名单和数据。

网站在记录球员历年薪金状况和经纪人薪水方面有自己的特色。

以上网站基本可以满足日常需求,当然这些不是数据网站的全部,还有一些网站虽然也有自己的特点,但要么比较小众,要么同质化严重,在此就不一一列举了,另外有不少个人站也在做数据分析,有一些站长已经被联盟招安到球队里研究数据了。为了说明数据的延伸范围,我再举两个例子。

这个网站会不时推出一些以数据为依托的专题,非常具有设计感。

这是一个关于“六度理论”的工具,能够通过几个中间人找出两个不沾边的队友的关系。

NBA球员身体数据及位置分析

前言

让我们先来看则新闻,元旦联盟爆炸出一惊人记录,就是绿军与

热火

的比赛中,凯尔特人后卫小

托马斯

爆砍52分,其中第四节一人独揽29分,且命中杀死比赛的三分球。但小托马斯身高仅仅175cm。不禁会想身高会限制位置吗,还有现在的NBA为什么后卫闪耀中锋却凤毛麟角?

数据获取

从NBA中国官方网站获取449名现役NBA球员的位置,身高,体重,国籍等数据。

数据分析

1.球员身高分布

library(ggplot2) ggplot(hy,aes(x=Position,y=Height,col=Position))+geom_dotplot(binaxis = "y",binwidth=0.5,stackdir="center")

几个有意思的异常值

NBA运动员最矮的人

> hy[hy$Height==min(hy$Height),] Player player team Position Height Weight years country 44 Thomas, Isaiah 托马斯, 以赛亚 凯尔特人 后卫 175 83.9 5 美国 78 Felder, Kay 菲尔德, 凯 骑士 后卫 175 79.8 0 美国

意外发现联盟里有两名175cm的球员,这给那些热爱篮球的身高不够的骚年们多大的鼓励啊!!

NBA运动员最高的人

> hy[hy$Height==max(hy$Height),] Player player team Position Height Weight years country 146 Marjanovic, Boban 马亚诺维奇, 鲍班 活塞 中锋 221 131.5 1 塞尔维亚 326 Porzingis, Kristaps 波尔津吉斯, 克里斯塔普斯 尼克斯 前锋 221 108.9 1 拉脱维亚

看到也有两个人身高同时达到了221cm,而且还都不是美国人。

可以发现,NBA中锋球员明显少于后卫及中锋,中锋的数量不及后卫及前锋的三分之一,近几年NBA缺少中锋的言论确实不少,

NBA球员国籍分布

hy1<-table(hy$country) hy1<-as.data.frame(hy1) hy1<-hy1[which(hy1$Freq>2),] hy1<-hy1[-1,] ggplot(hy1,aes(x=Var1,y=Freq))+geom_bar(stat="identity")

NBA里容纳43个国家的顶级球员,还有4名球员国籍不详。75.5%的球员是来自美国,6.5%来自法国,加拿大,巴西。

各个球队的中锋配置

hy2<-hy[which(hy$Position=="中锋"),] ggplot(hy2,aes(x=team))+geom_bar(stat="count")

在中锋匮乏的NBA,有8个球队只配备了一名中锋,黄蜂队却配置了4个中锋,快攻见长的勇士也配有3名中锋,根据市场供给原则,大胆的预测下,在今年球员交易日截止前,黄蜂队必有中锋被交易。

1.位置水平下的方差分析

将篮球队员的7个位置(我也不知道为何官方这样划分: 后卫, 后卫-前锋 , 前锋, 前锋-后卫, 前锋-中锋,中锋,中锋-前锋)看成7个水平,将7个位置下的身高看成该水平下的观测值

我们看不同水平下的观测值是否一样

> lamp<-data.frame( + X=hy$Height, + A=hy$level) > lamp.aov<-aov(X ~ A, data=lamp) > summary(lamp.aov) Df Sum Sq Mean Sq F value Pr(>F) A 1 8 8 <2e-16 *** Residuals 447 20 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

看到P值 <2e-16,所以不同位置下的身高明显不同。

数据探讨

先看下球员身高体重的分布

既然身高对位置有影响,不妨按身高体重进行聚类,用kmeans聚成3类,看聚类的效果好不好

> cust<-hy[,2:3] > kmeans_result1<-kmeans(cust,3) > hy$jl2<-kmeans_result1$cluster > table(hy$Position,kmeans_result1$cluster) > ggplot(hy,aes(x=Height,y=Weight,colour=jl2))+geom_point()

发现聚类的效果还算明显,基本上也契合了位置的分布,第一类是中锋,第二类锋卫摇摆人,第三类后卫。

小结

身高确实限制了NBA球员的位置黄蜂队会有中锋被交易。

越分析越发现自己做的片面-NBA数据分析小结

数据描述:年至年NBA球员各赛季比赛数据以及球员信息数据来源:NBA Players stats since

值参考本次分析中使用的数据,其余的隐藏掉了。

Year 所属年份-赛季

Player 球员姓名

Pos 球员司职

Age 球员年龄

Tm 球队

G 比赛场次

TS% 真实投篮命中率

OWS 进攻胜利贡献值

DWS 防守胜利贡献值

WS 胜利贡献值

以上数据来自 kaggle

还有一部分是 50年来历年冠军 nba百科就有

分析问题:

此次分析,由于早年间NBA没有进攻防守效率值甚至得分篮板等基础数据大量缺失,所以在数据中我参考了另外三项重要数据(OWS,DWS和 WS)进攻贡献、防守贡献、胜利贡献,并且是完善的数据,除了自由球员以外,无异常数据。由于0在统计中是重要指标所以0不是异常数据。

将球员分类

首先根据所有WS值进行总结,将每个值出现的频数进行制图:

判断两个分布全部为右偏态分布(基于正态分布),但是由于NBA在全世界是最顶尖的篮球联盟,自然球员素质和能力也都是顶尖的。所以左半边的low performance 的球员贡献值很少。如果总和全世界球员的ws值,一定是正态分布的。

根据OWS、DWS、WS的所有值,计算出全部球员的OWS、DWS、WS值域、均数和标准差。根据每个球员三项指标与均值的差额除以标准差,计算出Z分数,根据z分数和经验法则给球员进行分类z分数在-1到1之间的为C类球员,+1到+2之间的为B类球员,超过2的为A类球员,-2到-1之间为D类球员,其余则为E类球员。(简单统计一下,NBA中E类球员凤毛麟角,不愧为全球篮球第一联盟)WS代表一个球员的综合指数,OWS代表进攻,DWS代表防守,三个指标定义一个球员属类。效果见下图:

每年的冠军球队根据球员分类,判断是进攻性球队还是防守型球队还是综合性球队?

从网上另外的数据中获取到,年到年这68年的历年冠军,

由于要分析每年的冠军取胜之匙,为获得总冠军的球队自然要被剔除掉。经过整理:

该表按照-年份,球员分级 进行排序(已过滤所有每年非冠军球队)

整理好源数据后,使用透析表总结一下数据:

通过透视表可以看到每天冠军球队的球员进攻胜利贡献、防守胜利贡献和胜利贡献总和。从此表中可以清晰地看到,每支冠军队伍搁在防守和进攻对于球队胜利做出的贡献,最终分别用进攻贡献和防守贡献除以总和,看到球队胜利贡献更大占比是在进攻端还是防守端。参下图:

最后一列是进攻端在胜利贡献中岛的比例

最后根据进攻端在胜利贡献中的比例生成图:

从数据中得出:68年68只冠军球队,68条比例。其中超过50%和低于50%的数量都是:34

从数据看进攻和防守55开,但是事实上仔细看图,可以看出:

1.50年到74年依靠进攻夺冠的球队很少,以防守为夺冠基础的冠军球队更多。

2.74年到01年依靠进攻夺冠的球队增多。

3.01年以后趋于平衡,进攻端和防守端主导冠军无明显特征。

4.最重要的是,50年到74年夺冠依赖进攻指数极其低;74年到01年的虽然进攻依赖型冠军更多,但是根据具体的值参考,指数很接近050%,更靠近攻防两端平衡的球队。

综上而看,虽然依赖进攻的冠军和依赖防守的冠军数量在68年来想等,但是参考其具体数值,可以看出,防守依然夺冠因素中占更大比重的。

每年的总冠军球队是否拥有更多的优秀球员?

此前对球员进行过分级:A\B\C\D\E

接下来将A&B的球员定义为优秀球员,根据从年到年夺冠球队拥有的优秀球员数量和每年拥有最多优秀球员的球队中优秀球员的数量。判断优秀球员数量是否为夺冠第一要素。闲话不多说,上数据透视表:

每年各球队拥有优秀球员的数量

下面对比每年冠军球队拥有优秀球员的数量:

拥有最多的优秀球员夺冠为1,反之为0

经统计,这68年来有33次冠军没有拥有最多的优秀球员书,另外35年冠军都是拥有最多的优秀球员的。由此可见,优秀球员的数量确实主要的夺冠因素之一。 那么在细细分析一层,以84年作为分界点:

84年以前多数冠军球队是依赖球队拥有的优秀球员数量的。

84年以后更多的球队没有拥有更多的优秀小球员。

其实从字面上看拥有越多的优秀球员球队实力应该越强大

但是这里有一个问题就是在评选优秀球员的时候定义A级和B级同为优秀球员

那没问题来了,一个A级球员和4个B级球员更容易夺冠还是三个A级球员和2个C级球员更容易?

据此判断,84年以后不是冠军球队不再依赖优秀球员,而是更加依赖更为优秀的球星级球员配以更多功能性球员(B\C\D)

而84年之前的球队,更依赖球队整体实力,没有突出依赖球星个人实力。