R语言实践--科比投篮数据作图

 

 

 

一、数据总体概况

首先将该数据集的类型转化为csv,该数据集总共有25个维度,20000条数据,25个维度如下

action_type                   进攻方式(更具体)

combined_shot_type           进攻方式

game_event_id           比赛时间ID

game_id                 比赛ID

lat                          投篮点

loc_x                   投篮点

loc_y                   投篮点

lon                         投篮点

minutes_remaining             单节剩余时间(分钟)

period                    表示第几节

playoffs                      是否是季后赛

season                  赛季

seconds_remaining             剩余时间(秒)

shot_distance               投篮距离

shot_made_flag            是否进球

shot_type                    两分球或三分球

shot_zone_area             投篮区域

shot_zone_basic            投篮区域(更具体)

shot_zone_range            投篮范围

team_id                 球队ID

team_name                  球队名称

game_date                   比赛日期

matchup                 比赛双方

opponent                    对手

shot_id                   投篮ID

       浏览一些数据不难发现,数据集内存在一些缺失值。

二、基本数据处理

 

  1. 建立工作空间

 

933fb46f6776421d91b5aeec341f3ffc.png

2、设置工作空间和读取数据

 

760c2a4777194d7589d405301838c763.png

       用head()方法查看是否读取成功。

 

3、查看数据基本情况

 

该数据总共有25个维度的变量,不难看出原数据中存在空值,使用na.omit方法清理缺失值。

e0bd47885793459390239c8e928c6289.png

可以看到清理了三千余个存在缺失值的数据。通过进一步的分析发现有两列数据存在问题,playoff这列数据所有值均为0,也就是说在这些数据中没有科比的季后赛数据,season这列数据由于数据类型转换是出现了问题,导致存在近期的时间,

0b5fde54394043e1941f1bb9db7890ed.png

还有team_id和team_name全部都是一样的,也就不对其进行分析。

三、描述性统计分析

 

1、关于进攻方式

 

Action_type数据是更具体的投篮方式,有51个分类

2288d459075148fbafa12e95cacfd97c.png

由于种类繁多,就对combined_shot_type这个只有六个分类的进攻方式分析,

0360c3148c264d249de4838106f128d4.png

df1<-data.frame(table(kbdata$combined_shot_type))

df1

library(ggplot2)

ggplot(df1,aes(x=reorder(Var1,Freq),y=Freq))+

  geom_col(aes(fill=Var1))+

  geom_label(aes(label=Freq))+

  theme_bw()

76b1bf559d8f4741be5dec7705817be5.png

有勾手投篮、补篮、擦板投篮、扣篮、带球上篮、跳投,可以从结果图中看出来,勾手投篮、补篮和擦板投篮是科比很少使用的进攻方式,跳投是他最常用的方式,科比的后仰跳投是被人称为美如画的。

2、关于投篮区域

 

63cc101bfce1490ba61ff7e4879e22f7.png

###############

#投篮区域饼图

tb1<-table(kbdata$shot_zone_area)

lbl<-paste(names(tb1),"\n",tb1,sep = "")

pie(tb1,labels=lbl,col=rainbow(length(tb1)),

main = "投篮区域饼图")

 86c7e93a38184360ae40e9187317d06a.png

根据投篮区域的第一种表示方法,科比最喜欢在弧顶投篮,左侧跟右侧的投篮次数大致相同,还有一种投篮区域就是在底线以外投篮,这种方式比较困难,不过对于科比这位顶级篮球运动员来说还是比较简单的。

3、关于对手

 

5bfc3733bbbb4c9e80903d5e23e4e83b.png

###############

#面对每个队的出手次数饼图

tb2<-table(kbdata$opponent)

lbl<-paste(names(tb2),"\n",tb2,sep = "")

pie(tb2,labels=lbl,col=rainbow(length(tb2)),

main = "面对每个队的出手次数饼图")

ad5fa18d88e6412d9d4e1e4fa12f4fbd.png

这是科比在面对每个对手的出手次数的饼图,虽然显示比价密集,但是还是可以从中看出,在面对布鲁克林篮网和孟菲斯灰熊队的出手次数均不足一百次。

4、关于得分方式(两分或三分)

 

9b5430c87e5049629d5c6cb6cb9ff409.png

###############

#两分球和三分球的出手次数饼图

tb3<-table(kbdata$shot_type)

lbl<-paste(names(tb3),"\n",tb3,sep = "")

pie(tb3,labels=lbl,col=rainbow(length(tb3)),

main = "两分球和三分球的出手次数饼图")

e26e3711f73d40188802d6b4d99d78f6.png

可以从图中看出来,科比三分球投的只有五分之一左右,他的强项是中距离跳投,现在联盟里能够达到三分球和两分球相近的球员也只有库里了。

 

5、关于面对对手时是否命中

 

1733e92674e948528921f20cd70a763a.png

#########################

#科比在每个对面前的出手的命中与不命中的簇状图

ggplot(kbdata,aes(factor(opponent),fill=factor(shot_made_flag)))+geom_bar(position="dodge")

3b19005b72d641d49596ef67defa8722.png

可以从图中看出,科比只有在对阵纽约尼克斯的时候,命中率才稍微超过50%,这可能与对手的防守强度有关,事实上一名篮球运动员也很难保持高命中率,命中率始终保持在40%左右。

ba81e9263f4d40bd84a4c949070c4061.png

#####效果一样——————堆积柱形图

ggplot(kbdata,aes(factor(opponent),fill=factor(shot_made_flag)))+geom_bar()

21a7d1d515634ac9a282104d48c027a4.png

这个图的效果跟上面的簇状图的效果是一样的,在要对数据进行对比时,还是选择簇状图的对比结果更加明显。

 

6、关于面对对手的进攻方式

 

e3b08f1680d84a3ab7e04eddcd7bf2c4.png

#####每个对手的出手类型

ggplot(kbdata,aes(factor(opponent),fill=factor(combined_shot_type)))+geom_bar()

f1f68442fa174748b916b7d7b9ac4406.png

可以从图中看出来,科比在面对每一支队伍时的进攻方式都包含在了里面。

 

7、关于投篮位置

 

9770d200d3cf49a185d8e45dd7a5c576.png

#########################

#投篮位置空心点图

plot(kbdata$loc_x,kbdata$loc_y,type = "p",col="red")

40c9501c048949f493b33da99001a88a.png

进阶图

875bea3188eb4883b1abf655032e9e1b.png

###########################

#投篮位置分类点图

ggplot(data=kbdata,aes(x=loc_x,y=loc_y))+geom_point(aes(col=factor(combined_shot_type)))

25794c7925fc41ee96ab76e85aaea587.png

 

8、关于时间与是否命中

 

32addacf0aed48b1891084e74e1424e9.png

######################3

#投篮距离本节比赛结束的命中与不命中箱线图

ggplot(kbdata,aes(factor(shot_made_flag),minutes_remaining))+geom_boxplot()

3bbcddeee19849f6b3ff3927028a9d43.png

可以从图中看出,科比在比赛前几分钟的命中率是比较低的,在比赛中期的手感找回来了命中率有所提高。

 

9、关于投篮距离与是否命中

 

634962afe9474853ab5f8a3ec066d751.png

############################

#投篮时距离篮筐距离频率分布情况

ggplot(kbdata,aes(shot_distance,fill=factor(shot_made_flag)))+geom_density()

ggplot(kbdata,aes(shot_distance,color=factor(shot_made_flag)))+geom_density()

05297ffe51a14a74852ac74e17de142f.png

可以从图中看出来,在距离篮筐较近的位置,命中率非常高,可能是由于扣篮比较容易进球的缘故,在23英尺的位置也就是三分线内测的位置,出手次数显著减少,也是在这个位置附近,命中比不命中要少了许多。

 

10、节数、投篮距离与是否命中的分组组图

 

2733ef9f20524895b72f700ebdb88de5.png

#####################

#每节投篮距离和是否命中的分组组图

ggplot(kbdata,aes(period,shot_distance,color=shot_made_flag))+geom_point()

ggplot(kbdata,aes(period,shot_distance,color=factor(shot_made_flag)))+geom_point()

d00cd86e1c8c4f688607f69c9f1dff04.png

由于图过小,有很多重叠的部分,但是还是可以看出在远距离投篮方面,科比的命中率比较低,第四节的出手次数也比前三节要少一些。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
科比投篮数据分析项目是一个基于科比布莱恩特(Kobe Bryant)的投篮数据进行分析和可视化的项目。该项目旨在探索科比在职业生涯中的投篮表现,并从中提取有价值的见解。 以下是一个简单的科比投篮数据分析项目的示例: 1. 数据收集:首先,需要收集科比投篮数据。可以从公开的篮球统计网站或数据集中获取科比的比赛数据,包括每个投篮的位置、距离、结果等信息。 2. 数据清洗和准备:对收集到的数据进行清洗和准备工作。这包括处理缺失值、删除异常值、转换数据类型等。 3. 数据分析:使用适当的统计方法和可视化工具对数据进行分析。可以计算科比在不同位置、距离和比赛情况下的投篮命中率、效率等指标。还可以通过绘制热力图、散点图等图表来展示投篮分布和命中情况。 4. 模型建立:根据数据分析的结果,可以建立预测模型来预测科比在不同情况下的投篮命中率。可以使用机器学习算法如回归模型、决策树等来建立模型。 5. 结果解释和展示:对分析结果进行解释和展示。可以撰写报告、制作演示文稿或创建交互式可视化工具来向他人展示科比投篮表现和分析结果。 通过科比投篮数据分析项目,我们可以深入了解科比投篮技巧、强项和改进空间,为球队制定战术和训练提供参考。此外,该项目还可以为其他篮球运动员的数据分析提供借鉴和启发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值