前锋python入门到精通_武磊离顶级前锋到底有多远?Python实战分析告诉你

导读

随着疫情逐渐淡去,足球热度不断复燃。主流联赛尽已重启,英超、西甲冠军也相继提前出炉,欧洲五大联赛也只剩意甲还留有悬念尤文夺冠。作为一名多年伪球迷,在欢喜皇马时隔3年重夺联赛第34冠、尤文争冠形势一片大好之余,也不禁为武磊现东家(西班牙人俱乐部)以西甲副班长身份降级而感到惋惜。所以,本文就用python分析一下,武磊离顶级前锋还有多远?

谨以此文祝贺皇马力夺34冠

01 数据获取及分析框架

获取球员数据的渠道有多种,比如德国转会市场

(https://www.transfermarkt.de/)

、足球最大移动平台懂球帝等,都可以获得实时更新和较为完整的数据。但考虑抓取难度,笔者寻找了一个简单而又不失权威的足球运动员数据平台——PES官方数据库。PES作为最经典的足球游戏之一,其数据一般源于官方授权,虽然更新不够及时,但好在其获取极其简单(有分页的json API)、对于爬虫初学者来说十分友好,更重要的是无需考虑反爬问题。

PES 2020 数据库

简单分析网页请求API后,可以得到数据库获取的json接口,共752页1.5W余名足球运动员信息,每个球员共30余个特征信息,除去例如球员姓名、国籍等基本属性外,影响球员能力的特征也有20+,值得分析的切入点有许多,但限于篇幅和兴趣点:本文主要分析框架如下:

基本概况分析,重在探索宏观画像

球队级:大洲、国籍、联赛、球队

球员级:年龄、惯用脚、星级、评分、BMI、位置

主流联赛球员分布

主流联赛球员评分

球员个体排行榜:"各类"榜首球员

世界足坛超巨

各位置TOP 5

足坛老妖

潜力小妖

六边形战士

玻璃人超巨

借助机器学习,球员属性信息挖掘

回归问题:球员评分

分类问题1:球员星级

分类问题2:球员位置

聚类问题:武磊与顶级前锋的差距

注:本文数据均源于PES2020,所有分析观点和结论仅供参考。文末提供源代码和数据文件获取方式。

02 基本概况分析

为了从宏观上了解当前主流联赛现役球员情况,首先从以下4个维度给出球员分布:

球员宏观分布

从中可以得出以下几个鲜明结论:

大洲层面:欧洲产出足球运动员最多,占一半以上;其次为南美洲,也超过了1/4

国家层面,巴西是当之无愧的足球王国,遥遥领先于世界其他各国;相比之下,同为拉美足球大国的阿根廷则要逊色不少,略低于西、法两国,同时意大利、英格兰和荷兰也悉数入选TOP10,但德国可能是由于PES授权的原因而未进入前10榜单;同时令人欣喜的是,中国和泰国也均以贡献球员400+的喜人数据上榜(这可能和PES取得相应联赛授权有直接关系);

俱乐部层面,分别分析了球员人数和球员平均评分的直方图分布,基本呈现正态分布,并无更多实质信息量

其次,分析球员的基本属性(画像),主要是关注了球员的自然属性和评分问题。

球员基本属性

从球员的基本属性来看:

足球运动员的职业生涯覆盖15—40+,对于足球这种高对抗运动,能踢到40+已经算是不老神话了

球员BMI分布呈现方差较小的正态分布(体现为密度曲线高瘦,说明足球运动员身材都比较标准),考虑标准体型的BMI范围一般为18.5—23.9,所以更为strong的球员不再少数,当然也不排除低级别联赛一些虚胖而非strong的个体存在(BMI指标由身高和体重数据计算得来)

惯用脚方面,明显是右脚居多;球员位置仍然是传统角色居多,影锋、边前卫可能更多是出于阵型排布和战术考量而没有广泛存在

球员评分方面,目前PES中评分与星级的对应关系是:85+:5星,80-84:4星,75-79:3星,70-74:2星,<70:1星。观察各星级球员数量占比,基本呈现金字塔分布。

接下来,运用炫酷的桑基图展示主流联赛球员来源情况。这里,除了西英意法4大联赛球队信息完整外,德甲仅有几支顶尖俱乐部入选,并和其他几支欧洲强队以"欧洲其他球队"的联赛标签列入其中。同时,为了了解中超情况,也将中超联赛一并列入进行分析。

可能华而不实的桑基图

毫无疑问,欧洲主流联赛球员仍然是主要来自欧洲国家,这当然与俱乐部对外援数量限制(欧盟国家不占用外援名额)有关,但也不可否认的是欧洲足球的顶级水平。同时,南美和非洲也为五大联赛贡献了不少球员,包括巴萨曾经的三叉戟MSN(目前N已效力于法甲大巴黎)均来自南美国家,英超新贵利物浦的2名主力前锋萨拉赫和马内则都来自于非洲。另外,亚洲近年来也向欧洲输出了不少球员,包括亚洲一哥孙兴民、中超代表武磊等,其中孙兴民是PES2020中唯一一位亚洲籍5星球员。

下面的箱线图更能清晰表达几大联赛球员水平现状,通过整体分布区间、均值和极值来看,联赛水平排名应该是:西甲-英超-意甲-法甲-其他欧洲球队(含德甲几支强队)-中超。

几大联赛球员评分分布

另外,注意到西意法和其他欧洲球队均有一个评分超过90的极值点,盲猜应该分别是巴萨的梅西、尤文的C罗、巴黎的内马尔以及拜仁的莱万,这也基本代表了当今足坛的顶级前锋TOP4。

03 球员个体分析

前面是对球员整体进行了宏观分析,接下来主要聚焦于球员个体能力指标对比排名。

首先亮出当今世界足坛顶级球星(评分>90):

球员基本信息如下:

足坛八大顶级巨星(评分90+)

顶级超巨评分均在90+,需要说明的是90+评分在PES2020中已经算是绝对顶尖的水平了,一共仅有19名球员评分在90以上(即另有评分90的球员11人,包括拉莫斯、姆巴佩、丁丁、格列兹曼、萨拉赫等)。虽然姆巴佩算得上是十足的年少有为,内马尔、阿扎尔、阿里松也都处于职业黄金巅峰,但我们仍然要感慨于梅罗居然能以如此"高龄"持续统治世界足坛十余年,真是绝代双骄了。

再来依据位置细分排行榜。这里,区分前中后三条线和门将共4类位置对球员进行简单归并,并各取TOP5。得到如下榜单:

4条线TOP5

分位置来看,进入榜单的也都毫无意外,均是各俱乐部的铁打主力。不过如果说有哪个名字生疏的话,那不勒斯中卫库利巴利可能因为俱乐部原因而知名度略低一些。

梅罗以如此高龄统治足坛十余年,然而还有比其更为传奇的足坛不老神话,堪称是足坛老妖。比如,这位瑞典神塔伊布拉希莫维奇, 38岁高龄依然享有5星待遇。

5星中的34岁+球员仅有7位,都是传奇

如果说仅凭星级和年龄来评定足坛老妖还不够权威公允的话,那么定义老妖指数=评分*年龄,并遴选老妖指数TOP10的球员,会发现有

比伊布还要

更为传奇的面孔——布冯!

虽然岁月已不允许他继续以5星闪耀世界,但却没人会质疑他占据足坛老妖榜首的资格。此外,

伊布、C罗则仍然进入榜单前5

,足以证明其活化石能力;而巴萨前中场大脑哈维在这份榜单中排行第7位,但其真实身份已是阿尔萨德俱乐部教练。

老妖指数old_index=评分*年龄

英雄不问出处、成名不论岁数,足坛更能吸引世人眼球和撬动资本市场的实际上当属那些足坛小妖,或者称其为潜力股。几年前,初露锋芒的姆巴佩就是以这样的身份展现在世人面前,直至随法国队豪夺18年世界杯冠军正式证明自己,而不再仅仅是球迷口中的"妖人"。当然,

姆巴佩之后

足坛妖人也是从来不缺少后浪的

,比如:

5星中的U22球员已有8位,大多跨入豪门

与此同时,类似老妖指数,这里也给出相近的小妖指数定义:小妖指数=评分/年龄,仍然遴选TOP10,得到如下排行榜:

小妖指数young_index=评分/年龄

排在榜首的是一名15岁的智利球员,效力于本国甲级联赛,但其夺魁更多是出于年龄优势的加持,潜力和成长空间还仍需考证。相比之下,更值一提的是尤文的德里赫特、皇马的巴西小将双子星(维尼修斯和罗德里戈,均为00后),尤其是德里赫特能以20岁的年纪获得5星中卫评级,实属难得。

除了单属性巨星外,现代足球也需要全能型球员,号称绿茵场上的"六边形战士"——除了门将位置其他都能踢。为了找出这些足坛中的六边形战士,类似电商会员价值分析中的RFM模型,选定如下指标计算球员的六个维度指数:

传球:地面传球+高空传球+定位球

盘带:控球+盘带

速度:速度

身体:耐力+协调+弹跳+抗伤指数+身体接触

防守:防守+抢断+解围

射门:射门+头球

在此基础上,当球员的某个维度能力值高于所有球员均值时计为1,否则计为0。当在6个维度上均高于相应均值时,累计6星并达成六边形战士。遴选六变形战士中的评分TOP10球员,制作相应雷达图如下:

十大六边形战士能力雷达图(后卫超半席)

最后,我们再关注一项有趣的数据:足坛那些饱受伤病困扰的巨星。提到伤病对职业生涯的影响,可能大罗很有发言权:纵然其职业生涯不可谓不光彩、先后效力西甲和意甲死对头豪门

(皇马vs巴萨、米兰vs国米)

、个人和集体荣誉无数,并一度被誉为是贝利和马拉多纳之后球王第三人,但也不得不感慨伤病对其职业巅峰的巨大影响。放眼当下足坛,虽然医疗水平和饮食科学与日俱增,但饱受伤病困扰的巨星仍不在少数。基于数据库中的抗受伤指数信息,筛选最容易受伤的巨星TOP10,得到如下结果:

足坛10大玻璃人巨星

然而,可能是由于该指数区分度较低(PES数据中该字段仅有1、2、3三种取值,数值越高越不易受伤),所以有些球星与现实中的表现并不大一致,例如本泽马、克罗斯目前都是皇马出勤率超高的球员;而"知名玻璃人"也不再少数,例如贝尔、蒂亚戈、罗伊斯,毫不夸张的讲,倘若没有伤病困扰,他们当前的足坛地位会高出许多!

从这个角度讲,像梅罗这样天赋出众、不易受伤、巅峰期超长的巨星真称得上是多年难遇。

04 机器学习筛选

数据记录数量充足,特征又如此丰富,不拿来跑几个机器学习模型岂不可惜!

这一部分主要从3个角度展开分析,分别属于机器学习中的3类主流问题:

球员能力分析:

回归问题:以球员能力作为训练特征、球员评分作为回归变量,分析球员的机器学习评分(以下简称ML评分)和PES评分差值

分类问题:仅以星级来衡量球员能力,并以此作为分类标签,执行分类任务

进一步地,以机器学习模型得到的ML评分和星级作为球员"真实能力",对比PES评分和星级,分析那些被PES高估和低估的球员;

球员位置预测:这也是一个分类任务,但考虑分类的难度和准确率,对球员担任角色区分前中后场和门将4类位置,构造一个4分类任务,探索"职能不符"或者"不务正业"的球员

球员聚类分析,基于物以类聚人以群分的思想,重点探索PES中哪些球员和武磊更为"相近"。了解一个人的价值、可以看他与何人为伍。所以,分析武磊和哪些球员聚类在一个簇,一定程度上可以管窥武磊在足坛的地位和水平。

上述机器学习模型中,回归和分类任务均调用随机森林模型,且未进行任何特征工程和优化调参;聚类任务则是在执行归一化处理后调用K均值聚类模型,并以轮廓系数作为度量指标选择最优簇数。

首先来看球员能力分析方面。

以球员评分作为预测值,执行随机森林回归后,得到R2评分为0.95,具有较好的学习效果。基于此模型,将ML评分和PES评分做差,得到被PES高估

(PES评分高于ML评分)

和低估

(PES评分低于ML评分)

的十大球员分别是:

【评分】十大高估球员:豪门溢价导致"高分低能"

【评分】十大低估球员:低级别联赛限制了身价

类似地,调用随机森林分类模型对球员星级进行预测,得到最后准确率评分0.88,略显偏低。以此模型对所有球员进行星级预测,并与PES给出的星级对比,分别得到如下结果:

【星级】十大高估球员:全部是欧洲豪门球员

【星级】十大低估球员:多为二线球队球员

通过以上两个模型训练和预测结果分析,最直接的结论是:

平台很重要

,豪门俱乐部和不知名球队对于球员的能力评分可能带来很大的反差:豪门带来的是"溢价"、不知名球队则可能造成"贬值"

估计被模型

黑的最惨的两个球星当属曼城门将埃德森和尤文中锋伊瓜因了

,前者在评分中贬值近8分,按照星级划分规则直接5星变4星;后者则干脆在星级预测中5星变3星。

从另一个角度来看,

那些PES评分较低而ML评分更高的球员,则可能是足坛潜力股,一旦得到豪门青睐补齐球队劣势因素则可能声名鹊起、名声大噪!

接下来通过球员位置分类模型,分析哪些球员可能"职能不符"或者"不务正业"。

仍然是调用随机森林分类模型,对所有球员执行4分类任务,得到分类准确率评分0.9,学习效果可以接受。给出混淆矩阵结果,以期直观探索各类型球员位置预测错误情况:

球员预测结果混淆矩阵

左侧索引为真实位置、上方列名为预测位置

容易发现:

门将位置球员无一错误

(号称门卫的诺伊尔呢)

,均得到了正确的位置预测,看来门将的属性与其他三类球员特征有着明显区分,不易混淆

中场球员是被预测错误最多的位置,且雨露均沾的被错误预测到前场和后场的球员样本分别有70次和129次,这不足为奇:一方面与球员自身能力特点有关,比如边前卫和边锋属性更为相近、前腰和影锋也有很多属性共同点,后腰更是常常能客串中卫的角色;另一方面则是由于PES数据库本身标签定位问题,例如皇马新星阿森西奥被标为左前卫,但实际更像是一个边锋角色;

后场球员被分错位置的样本中,绝大多数是预测成了中场,而仅有3例是被判成了前锋

(看了记录,居然没有拉莫斯!)

前场球员有着相似效果,在预测错误的样本中绝大多数被判为中场,而仅有5例是前场预测成了后场,这该是有多么偏爱防守的前锋啊

给出预测位置与实际位置不符的十大巨星:

十大"职能不符"巨星,均在"合理"范围之内

最后,运用聚类模型,对与武磊同位置(左边锋)球员样本执行聚类任务,以便了解武磊在左边锋队伍中到底属于什么水平,与左边锋中的顶级巨星(以C罗、内马尔、阿扎尔为代表)又有多大差距。

经过简单的聚类训练后

(以轮廓系数作为评价指标,但得分整体处于较低水平)

,设置K均值聚类参数n_clusters=5,并对各簇球员平均分进行可视化如下:

5簇球员平均评分:武磊在簇"1"中,以微弱劣势处于第三

与武磊同伍的那些左边锋们

整体来看,与武磊在同一聚类的左边锋球员队伍中,评分大多处于80分左右(对应3-4星球员),知名度方面也并没有特别突出的球员。

最后,遴选左边锋位置比较重要的两项能力——速度和射门,制作散点图如下:

武磊与5星左边锋队伍差距依然很大

显然,仅就速度和射门两项属性来看:武磊在速度上占据一定优势,甚至超过部分5星左边锋,但射门属性上却相去甚远,一定程度上可以反映武磊当前在足坛的地位和水平,更重要的还有很多其他能力属性也有差距。武磊当前所处的境地,可能也正是国内足球现状的一个缩影!

05 后记

本文以PES2020球员数据库作为数据源,主要完成球员宏观分布情况、球员个体排行榜以及机器学习模型下的球员属性分析,得到了一些有意义的结论,对于足球爱好者来说也能称得上有趣。

同时,后续可能的优化思路是:

数据侧:

横向扩充样本数量

,例如可以从德国转会市场API中获取更多在役球员和俱乐部数据;

纵向增加特征数据

,例如补充球员实时表现数据,包括进球、助攻、传球等关键数据

算法侧:本文所用到的分析模型均选择了最为基础的机器学习模型,后续

可考虑进行模型调参和多模型对比

,应用优化后的模型预测结果进行分析更有价值

分析侧:数据体量较大,所以可分析的切入点还有很多,例如

可以面向俱乐部构建能力评价指标

(例如球队六边形、潜力指数等),查看俱乐部的能力水平;补充历年历史数据,

利用时间序列模型分析球员能力增长属性和升值空间

最后再次指出,受限于数据准确度和时效性等因素,本文所有分析观点和结论仅供参考娱乐,不足以说明任何实质结论。

你可能感兴趣的:(前锋python入门到精通)