首页 >知识讲堂 >数据分析知识>如何数据模拟多场美式橄榄球比赛?

如何数据模拟多场美式橄榄球比赛?

2021-01-04 11:06:16 阅读(177 评论(0)

本文使用R语言模拟美国橄榄球比赛的数据,我们将完成以下部分的工作。在我们完成了单场比赛的模拟后,我们可以非常方便地进行多场比赛的模拟。首先,我们需要通过循环语句实现多场比赛的时间表,并将单场比赛的模拟嵌入循环语句中;同时,我们需要变量来记录每支球队的胜利和失败。下面,我们将一步一步地展示如何模拟多场比赛。一旦你完成了单场比赛的模拟,我们就完成了本部分的三分之一的代码。处理过程按照我们既定的想法完成以下模拟。1.如前所述,我们首先需要制定一个时间表,即决定每场比赛的对抗。在许多决定方法中,NFL将有一个更好的时间表。但是,我们可以从以下任何方面的时间表来看,我们可以通过下面的时间表来模拟自己的时间表。但是,我们可以从下面的时间表来看,我们可以更好地输入到下面的时间表。但是如何通过下面的时间表来模拟时间表。我们可以更好地考虑如何通过下面的代码。games_per_team<-50for(weekin1):games_per_team){home_index<-sample(1:32,16,replace=F)home_teams<-data.frame(HomeTeam=offense[home_index,1])away_teams<-data.frame(AwayTeam=offense[-home_index,1])if(week==1){schedule<-cbind(Week=week,HomeTeam=home_teams,AwayTeam=away_teams)}else{temp<-cbind(Week=week,HomeTeam=home_teams,AwayTeam=away_teams)schedule<-rbind(schedule,temp)}}通过上述代码,我们得到了下图中显示的数据框变量。然而,由于sample函数的随机性,读者执行代码产生的主队和客队并不一定与这里的团队名称完全匹配。2.确定时间表后,我们现在可以记录每支球队的结果。records<-data.frame(Team=offense$Team)records$Wins<-0records$Losses<-0通过执行上述代码,我们可以获得以下数据框。3.现在我们需要通过程序自动实现每场比赛,并更新记录每支球队的输赢记录。我们通过在for循环中嵌入上一节中的代码来实现多场比赛。我们分步拆分for循环如下。for(iin1:nrow(schedule)){home_team<-schedule[i,2]away_team<-schedule[i,3]week<-schedule[i,1]本代码确定与模拟赛程中的周数相同的周数,并在每个周期中记录主队、客队和比赛的周数。4.下一个循环部分是我们以前的代码。本代码通过比较传球、影响和整体能力的差异来确定每场比赛的获胜者。off_game<-subset(offense,Team==home_team |Team==away_team)[,c(1,15,16,19)def_game<-subset(defense,Team==home_team|Team==away_team)[,c(1,14,15,18)game<-merge(off_game,def_game,by.x=”Team”,by.y=”Team”)game$Net_Pass[game$Team==home_team]<-game$OPassStrength[game$Team==home_team]–game$DPassStrength[game$Team==away_team]game$Net_Pass[game$Team==away_team]<-game$OPassStrength[game$Team==away_team]–game$DPassStrength[game$Team==home_team]game$Net_Rush[game$Team==home_team]<-game$ORushStrength[game$Team==home_team]–game$DRushStrength[game$Team==away_team]game$Net_Rush[game$Team==away_team]<-game$ORushStrength[game$Team==away_team]–game$DRushStrength[game$Team==home_team]game$Net_Total[game$Team==home_team]<-game$OffStrength[game$Team==home_team]–game$DefStrength[game$Team==away_team]game$Net_Total[game$Team==away_team]<-game$OffStrength[game$Team==away_team]–game$DefStrength[game$Team==home_team]game$Net_Total<-game$Net_Pass game$Net_Rush game$Net_Totalif(game$Net_Total[game$Team==home_team]>=game$Net_Total[game$Team==away_team]){winner<-home_teamloser<-away_team}else{winner<-away_teamloser<-home_team}5.本段代码记录每场比赛的结果,并更新整个赛季各队的输赢记录。if(i==1){winnerdf<-data.frame(Winner=winner)loserdf<-data.frame(Loser=loser)results<-cbind(winnerdf,loserdf)}else{winnerdf<-data.frame(Winner=winner)loserdf<-data.frame(Loser=loser)temp<-cbind(winnerdf,loserdf)results<-rbind(results,temp)}records$Wins[records$Team==winner]<-as.numeric(records$Wins[records$Team==winner]) 1records$Losses[records$Team==loser]<-as.numeric(records$Losses[records$Team==loser]) 1print(paste(“Week”,week,”:”,winner,“beat”,loser))}[1]“Week1:DenverBroncosbeatSanDiegoChargers[1]“Weeek1”:IndianapolisColtsbeatChicagoBears[1]“Weeek1”:SanFrancisco49ersbeatPhiladelphiaEagles[1]“Weeek1”:TennesseeTitansbeatDallasCowboys[1]“Weeek1”:CincinnatiBengalsbeatBaltimoreRavens[1]“Weeek1”:SeattleSeahawksbeatDetroitLions[1]“Weeek1”:GreenBayPackersbeatNewEnglandPatriots[1]“Weeek1”:PittsburghSteelersbeatMinnesotaVikings“for循环后产生的results变量如下图所示。6.最后,我们通过对每支球队获胜次数的降序来决定本赛季的最终获胜者。6.最后,我们通过对每支球队获胜次数的降序来决定本赛季的最终获胜者。records<-records[order(-records$Wins),]排序后的数据框架如下图所示。通过比较2013赛季的真实结果(见下图),我们可以看到模拟赛季前十名中的七支球队也在榜单上。这说明我们模拟赛季的结果是合理的。当然,我们也可以通过其他方法进行更准确的赛季模拟。在本节中,我们使用sample函数每周随机生成对双方的对抗。home_index<-sample(1:32,16,replace=F)以上sample函数从32支球队中随机选出16支球队作为主队,无需放回。其中home_index的队伍是主队,其他队伍是客队。同时,我们可以利用for循环来实现每一场比赛,并决定每一场比赛的胜负。for(iintimes-you-want-to-loop){dowhatyouwanttorepeat}你可以在for循环中实现任何你想要实现的逻辑。而且,正如我们在本节中实现的,条件表达式可以嵌入到for循环中。在本章中,我们利用R实现了计算、比较和绘图,甚至利用R编程语言的特性完全实现了竞争模拟引擎。在这个模拟引擎中,我们可以计算每个足球队在过去每场比赛中的表现,以及球队之间的相对优缺点。通过实现本章的逻辑,我们回答了一些基本问题,并给出了一些基本的统计变量。读者可以通过对这个项目进行更多的探索来锻炼他们使用R的能力。读者可以尝试提高本章提出的能力指数计算方法。在计算能力指数时,我们可以引入更多的变量,或者给每个变量不同的权重。更重要的是,读者可以尝试使用其他或自己建立的公式。实践数据科学的一个非常重要的过程是设计不同的实验来尝试和迭代。因此,更多的尝试和记录每个实验结果的质量可以帮助你探索更好的计算能力指数。探索的另一个方向是实现更接近现实的模拟。因此,读者可以使用真实的时间表,而不是我们模拟的时间表。当我们计算的能力指数显示比赛应该是平局时,我们可以通过引入概率变量来解释比赛的结果。同样,在这个方向上做更多的尝试和迭代可以帮助读者更好地接近现实,解释现实。如果您想为模型增加更多的变量和粒度,您可以介绍每个球员的统计变量,甚至球队球员的伤病信息,以帮助您预测球队未来的表现。但是,另一个非常有趣的研究方向是预测来自不同赛季的冠军队伍在对抗中的表现。例如,现任超级碗冠军Seatleseahawks将如何对抗前冠军NewenglandPatriots和NewyorkGiants,读者可以设计自己的逻辑来决定哪支球队是过去十年中最好的。

以上就是关于如何数据模拟多场美式橄榄球比赛?的相关介绍,更多如何数据模拟多场美式橄榄球比赛?相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对如何数据模拟多场美式橄榄球比赛?有更深的了解和认识。

内容来源:数据分析网,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

适合初学者的6款免费英语学习软件

随着互联网不断的发展,人们开始学习了英语,但是在学习英语的过程中。很多人都出现了许多问题学不好学不会等问题,逐渐的出现了学英语的软件免费!所以给大家推荐6款学英语的软件免费。1.有道词典有道词典是网易有道出品的全球首…查看详情

盘点2021最热会员卡管理系统排名

随着经济的不断发展,公司发展的体制也在不断变化,公司服务在不断优化,推出了会员卡等系列的为客户服务的产品,会员卡作为会员的凭证出现,对公司的发展有着重要的作用,但是应该来怎样管理会员卡的相关信息呢,接下来就盘点一…查看详情

借助网站运营工具(非编辑类)可进行品牌强曝光

都知道品牌曝光是提升产品知名度,树立企业名片的重要运营方法,常规的做法是以营销活动或者事件来刷新群众熟悉度,博取消费者眼球建立品牌辨识度。这种曝光方式通常是不以转化为目的品牌营销活动,具有投入成本高、持续时间长及…查看详情

做网站推广怎么样?企业必须要做网站推广吗?

在当今的商业环境中,网站推广是一个非常流行的概念。如今,大多数线下企业正将注意力转向*空间。拥有一个代表品牌或业务的网站是在互联网市场上迈出正确的第一步的最好方法。那么,做网站推广怎么样呢?到底有用吗?应该怎么做?…查看详情

电视直播app哪个好 2022好用的电视直播软件

  今年智能电视可谓是群雄逐鹿,新品智能电视一波接一波,在配置,性能,外观上各个品牌都有较大提升,那你知道2022电视直播app到底哪个比较好用呢,下面万商云集*就给你整理了这方面的内容。当贝市场  第三方应用市场,在智能电…查看详情

外贸推广建站怎么做?外贸推广建站方法

  跨境电商独立站:指的是一个跨境卖家专属独立的网站,包括拥有独立的域名、独立服务器、独立页面、独立空间及独立网站程序,并能通过线上方式面向国外用户来展示产品-选购-支付下单,由跨境电商卖家完全独立运营,不受其它平台…查看详情

如何选择简单的crm系统?这几款可以参考

随着crm系统带来的管理和销售效率,越来越多的企业开始引进crm系统。然而每个crm厂商的侧重点与目标客户群体的不同,企业在选择crm时容易混淆,不仅怕复杂的crm系统无法操控,还怕花了冤枉钱,所以接下来小万为大家介绍2019年最受欢迎的…...查看详情

代运营靠不靠谱?口碑差,是因为一颗老鼠屎坏了一锅汤

说起代运营,大家绝对不会陌生,即使不在电商这行,也肯定看过或者听过谁谁谁又被坑了……很显然这已经成为了大家对代运营的标签,一提起便想到。但它的存在肯定是有道理的,也不能一味进行批判,今天带大家走进代运营,看看到底…查看详情

25家初创企业走进万商云集取经创业之道

8月16日,毕友·百鲲社“未来独角兽”系列第112期活动,走进了在SAAS领域耕植了十几年、被称为SAAS领域“京东”的未来独角兽企业——万商云集,万商云集创始人董事长王飞、CFO兼董事长秘书刘明明等高管出席,与来自各个行业领域的研究者…查看详情

推广运营能为企业带来哪些优势

随着移动互联网的飞速发展,推广运营在企业所占权重不断加重。企业推广做好了,企业曝光率也增加了,成交额也随之升高。因此各种不同互联网类型企业为推广运营专门建立企划部门。但是随时而来的问题:推广运营具体怎么做呢?推广…查看详情

全网舆情监测系统的重要用处

随着互联网的快速发展,信息的传播方式已经不再是口头和书信了。网络媒体作为一种新的信息传播形式出世,早已深入人们的日常生活,为人们的生活带来前所未有的便利和迅捷。但事物总有两面性,不良和带有欺骗性的信息也屡见不鲜,…查看详情

OSI模型是什么

osi模型中文名称?开放式系统互联通信参考模型(英语:OpenSystemInterconnectionReferenceModel,缩写为OSI),简称为OSI模型(OSImodel),一种概念模型,由国际标准化组织提出,一个试图使各种计...查看详情

香港公司如何查询

  怎样查询香港公司的注册信息?  香港公司注册信息查询步骤:  1:进入“公司注册处综合资讯系统”,点击进入查询系统,选择无账号使用者登陆。  2:登入之后,会出现服务条款,选择接受并登入。注意最上方的语言选择,选…查看详情

杭州网站建设哪家好?客观分析、慎重选择、避免入坑

如今想要向用户传递自己品牌形象的企业越来也多,所以建设网站的企业也越来越多。但有相当一部分企业,他们并没有可以搭建网站的团队,于是网站建设公司又出现了。全国各地有建站需求的企业众多,全国各地网站建设公司就多,但如…查看详情

get这些繁体字输入法,瞬间逼格提升满满

现在很多人都会选择在一些社交软件聊天,但是有时会遇到一些说繁体字的人,或者因为一些工作的需求都需要用到繁体字,这就需要一些繁体字的输入法啦,以下是我给大家推荐的繁体字输入法。 一、搜狗繁体输入法 1、比较强的一…查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

已为0个客户提供专业互联网服务咨询
  • 手机号码
  • 验证码图形验证码换一张
  • 短信校验码

    电话咨询

    在线咨询