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

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

2021-01-04 11:06:16 阅读(182 评论(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,读者可以设计自己的逻辑来决定哪支球队是过去十年中最好的。

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

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

推荐阅读

创业项目排行榜前十名,这些的发展前景可观

为了挑战自己,或者是给家人带来一个更好的生活条件,所以不少人都选择了自主创业,但是创业的成功与否,跟选择的创业项目有直接的关系,所以不能够盲目,那么下面就为大家重点介绍创业项目排行榜前十名,这些项目的发展前景可观…查看详情

全新火热免费小说阅读APP软件排名榜

生活上免不了枯燥乏味,因此这个时候大伙儿便会做些事儿或是读小说打发时间,但很多小说书看半截要计费大伙儿就很多支去,这儿给用户强烈推荐好用又免费的软件,下面便是我给大伙儿强烈推荐的多款APP1.17K小说书这一手机app是由深圳中…查看详情

免费看综艺的软件有哪些 免费看综艺的软件排行榜

  现在大家平时无聊的时候相信大家都喜欢看综艺打发时间,其实现在市面上的综艺是很多的,但是可以免费看综艺的软件比较少,下面*就给大家来详细介绍一下免费看综艺的软件有哪些 免费看综艺的软件排行榜这一块的相关内容,希…查看详情

网站运营话术:直接展现的是内容,要注重言辞和细节

话术是伴随历史发展演变,并传承的行业文化,是各行各业安身立命的基础,听起来或许过于商业化,但却包含了从做人做事的技巧,各行业完整话术应该是具有清晰、具体、可操作的行动指南。网站运营话术与网站运营专业术语不同,网站…查看详情

照片合成软件有哪些?这些软件值得选择

很多人都喜欢拍照片,拍完照片之后将照片合成,能够带来更好的效果,也能够达到自己想要的照片。照片合成就应该要用到不错的软件,有了软件之后轻轻松松就能够搞定,会让自己设计的照片效果更加完美。那么照片合成软件有哪些?下…查看详情

2021最适合中小型企业的oa系统排名

企业规模不同,其信息化流转方式也有一定差异,如日常的内部管理,以及业务梳理和市场定位,中小型企业不同于的大型企业的一点在于,其oa程序化实施周期并不长,所以并不需要在软件的定制开发上提供大量人力和物力,那么最适合中小…查看详情

美的置业在贵阳发生垮塌事件,8人*

随着房地产业爆发式经济增长,其安全事故一直颇受社会关注。昨日下午,贵阳美的置业一施工地下停车场发生垮塌事件,导致8人*,2人受伤,再次敲响安全警钟,把房地产行业推向安全建设风口。事件发生后,美的置业在其官方微信号上于…查看详情

淘宝领取方式有哪些?红包该怎么抢?

怎样在淘宝网抢红包?抢红包的技巧:  1.下载按键精灵录制好鼠标点击的步骤;  2整点前几分钟不断刷新屏幕,整点一分钟左右的时间是抢红包的黄金时间,建议手动点击鼠标,同时不断按F5刷新.  3超级红包阶段,尽量快速点击黑猫提…查看详情

SCRM营销能给传统中小企业带来什么?

传统CRM客户关系管理系统可以帮助企业提高与客户的沟通体验,随着技术和潮流的发展,传统CRM走向移动端,再走向社交领域,升华为SCRM,成为如今CRM市场的热门产品。而SCRM营销也渐渐席卷各行各业的销售市场,不同于CRM,通过SCRM营销...查看详情

苹果怎么下载droid4x

  首先介绍一下Droid4X是什么  Droid4X是一款功能强大的Android模拟器,它允许您在您的Windows操作系统上运行Android。这样您可以在PC大屏上运行所有Android应用,而无需使用一个尺寸较小的智能手机或平板电...查看详情

抢火车票软件哪个好 什么抢票软件好

  大家好,这里是万商云集说软件。今天万商云集*给大家介绍的这款软件是第三方抢火车票软件,这款软件是专门用于电脑端的,它的功能很强大,下面让我们看一下主界面。希望能给到你很多帮助。  在登陆自己的12306账号后,就会显…查看详情

怎么入驻淘宝外卖?

  优质答案(1)  1.健康证  2.因为接触的是食品,健康证必须有。  3.加入美团外卖需要具备的基本条件:持有健康证,并具有完全民事行为能力和相应的劳动能力;年满十八周岁且不得超过五十周岁;无犯违法罪记录、无吸毒记录…查看详情

商标查询网有哪些查询方法?商标查询方法要知道

现在是对知识产权越来越受保护的时代,有很多的企业都会注册商标,可以说注册商标也是比较火爆的,从小的企业到世界500强企业,只有通过注册商标才能够更好的保护自己的品牌。其实在进行注册商标的时候也是需要注意很多事项的,也…查看详情

手机同声翻译软件哪款好用?

英语是我们上了三年级之后就必须要学习的课程,不管以后工作也好还是创业也罢,难免多多少少会涉及到一些英文,如果不认识英文也没有关系,可以用英语同声翻译软件翻译一下。1、同声传译具有各种各样翻译体系,同声传译,字幕翻译…查看详情

鸿蒙3.0第三批支持机型有哪些

荣耀手机鸿蒙3.0升级机型完整名单?华为P50系列、华为Mate40系列华为MateX2系列、华为MateXS2系列华为MatePadPro系列(2021款)第二批:华为P40系列、华为Mate30系列华为MateXS系列、华为MateX华...查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

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

    电话咨询

    在线咨询