最近琢磨了一下NBA数据库这玩意儿,主要是自己看球嘛老想查点深入的数据,光看新闻和集锦不过瘾。我就想着,这数据得到哪儿找?
最直接的,就是去NBA的官方网站瞅瞅。那上面的信息确实挺权威的,球员资料、球队战绩啥的都有。但有时候想做点横向比较,或者找点历史数据,官网那个界面,点来点去有点费劲,不是专门为数据分析设计的。
后来我又到处搜,发现国内像新浪体育啥的,也有自己的数据中心。点进去看过,嚯,数据是不少,球员、球队、比赛都有,还分赛季。试了试他们的搜索功能,比如直接打个球员名字,像“勒布朗·詹姆斯”,就能跳出来他一堆数据。
捣鼓数据表
光看不行,我还想自己整理整理。就想着能不能把数据扒拉下来自己玩。这时候就接触到一些概念,说什么数据库里面有不同的数据表。我理解着大概就是,球员信息放一个表,球队信息放一个表,每场比赛的数据又是一个表。
- 球员表:大概就是球员名字、身高、体重、位置、哪个队的之类的。
- 球队表:就是各个球队的基本信息。
- 比赛表:这个就细了,哪天打的,谁跟谁打,比分多少,每个球员上场多久,得了多少分,抢了多少篮板,送了多少助攻,等等等等。
看到这些,我当时就觉得,哇,这要是都整理好了,那可太牛了,想怎么查就怎么查。
上手试试查询和筛选
有了点方向,我就开始实践了。找了些公开的数据源,有的是网站直接提供的查询接口,有的能下载到一些零散的数据文件(比如CSV格式的)。
先试试关键词搜索。比如,我想看“科比·布莱恩特”的数据,直接搜名字,相关的比赛、生涯统计基本都能出来。这还挺方便的。
然后就是筛选。这个功能我觉得特别有用。比如,我想看某个特定赛季,像2015-2016赛季,所有“控球后卫”的“场均助攻”排名。用筛选功能,先把赛季定再把位置选成控卫,然后按助攻数排个序,一下子就清楚了。比自己手动翻效率高多了。
我还试着做了点简单的数据分析。就是比较嘛比如比较同一个球员不同赛季的表现变化,看看他得分、篮板、助攻这些核心数据是涨了还是跌了。或者比较不同球员,在同一个赛季里的表现,谁更猛之类的。
搞了半天发现的坑
听起来好像挺顺利的哈?中间踩了不少坑。
就是数据的完整性和准确性问题。特别是历史数据,越往早了翻,数据越可能不全,甚至有些记录都找不到了。有时候不同来源的数据一对,还不一样!这就头大了,不知道该信哪个。
还有就是,数据不是万能的。光看数据,确实能反映很多东西,但篮球比赛这东西复杂得很。一个球员的作用,有时候不是数据能完全体现的,比如防守端的威慑力、场上的领导力、关键时刻的心理素质等等。这些冷冰冰的数字背后,东西多着。
再有就是,找数据源也挺折腾。有的要注册,有的要收费,有的接口用着用着就变了或者停了。想自己从头搭一个完整的数据库,那工程量,对我这种业余搞搞的来说,简直不敢想。
的一点小总结
这回捣鼓NBA数据库的经历,还是挺有意思的。让我对NBA数据有了更深的了解,也学会了怎么更有效地去查找和利用这些信息。虽然遇到了不少困难,数据本身也有局限性,但这个过程本身,对我一个球迷来说,收获还是蛮大的。
我基本上就是熟练运用几个靠谱的数据网站或者工具,需要查啥的时候能快速找到。自己本地也存了一些整理好的小表格,方便随时看看。至于建一个大而全的库,那就算了,玩玩可以,当事业搞太难了,哈哈。
