熱線電話:13121318867

登錄
首頁精彩閱讀武磊告別西甲!Python帶你解讀「全村的希望」武磊職業數據
武磊告別西甲!Python帶你解讀「全村的希望」武磊職業數據
2020-07-22
收藏

                                                           CDA數據分析師出品

作者:澤龍、Mika

數據:真達  

后期:澤龍

【導讀】

北京時間7月20日,這個賽季的西甲聯賽正式結束,最受關注的“全村的希望”武磊和他的西班牙人隊徹底告別西甲。

今天我們就用數據來聊一聊武磊。Python技術部分請直接看第二部分。

今天我們聊一聊 武磊

最近,中國足球又成為了社會的焦點話題,12分鐘跑、體能、成績成了社會人士和專業人士互懟的話題,外行懟內行基本功都不行,還玩啥,內行懟外行足球是綜合運動,你不懂。真的是熱鬧非凡,可能足球真的只分為內行和外行,完全不關心的人很少,是個看球的人都可以說自己懂足球,真是現實唯唯諾諾,網絡重拳出擊。

回到本期的主人公,中國足球第一人武磊,武球王,下賽季,武磊的去向一直占據的體育板塊的頭版頭條,幾家有中國背景的球隊都想得到武磊,商業價值的確無可比擬,看看愛奇藝西甲的收視率,武磊登場的比賽和不登場的比賽相差70%,西班牙人整體收視率可以和英超媲美了,這就是商業價值,西班牙人雖然降級,但是樂動體育可是知名度節節攀升,這筆投資性價比還是很高的。

我們抽取了皇家西班牙人足球俱樂部在18/19 19/20 2個賽季的全部比賽數據,做了可視化分析,下面我們就來對應數據,解讀下武磊的表現。

本文主要從這幾個角度展開

  • 武磊生涯評分
  • 武磊身價浮動數據
  • 武磊歐洲進球曲線圖
  • 西班牙人進攻效率對比
  • 數據分析過程

01數據解讀武磊

我們先來看看武磊職業生涯中的各項數據分析:

1武磊近年生涯回顧 

看到武磊的生涯評分,從16年到20年,雖然成下降趨勢,但是西甲的強度和中超的強度本身是2個世界,所以說下降也是情理之中,畢竟對手和隊友都不一樣,在西甲的1.5個賽季,武磊算是高開低走,但是西班牙人更是出現斷崖式的下滑,所以要是對比武磊和西班牙人的下滑曲線,C君覺得這個賽季西班牙人真的配不上武磊。

2武磊身價達到1000萬歐元

看了生涯走勢,再看下身價走勢。

武磊小時候的愿望,我要值1000萬—真的實現了,西甲中下游球隊的主力前鋒值1000萬也算是公平公正了,雖然進球數有點刺眼,但是創造機會能力強。最近武磊身價下降了200萬,主要是因為西班牙人本賽季真的不給力,下賽季假如武磊可以登陸英超,估計身價可以更高。

3武磊歐洲進球曲線圖

為了更直觀的感受武磊的進球效率,我們統計了武磊正式比賽的進球數,做了折線圖。

直觀感受是進球效率的確不高,但西班牙人的進攻效率更是低下,基本每場比賽射門更是寥寥無幾。只能說武磊不是強力中鋒,沒有能力一個人左右鋒線,他更加舒服的位置是踢二中鋒,跑位、射門,而不是護球、盤帶、過人、傳球。

4西班牙人進攻效率對比

其實也不能完全怪武磊的進攻效率,看看西班牙人的本賽季的進球數,也是慘絕人寰,而且這個不光是西甲,還加入了歐聯杯的比賽,要是只看西甲,可以說西班牙人不降級都說不過去,場均也就1個球,再加上后衛線最強的是主力門將,防守常年出問題,可以說西班牙人配的上一個降級名額。 

西班牙人隊得分走勢(2018.8.19-2019.5.18)

西班牙人隊得分走勢(2019.7.27-至今)

我們對比了上賽季的西班牙人,可以明顯看出上賽季的西班牙人進攻好很多,可以達到場均2個球,而且穩定,后防線和本賽季相差不多,但是1個球就可以決定勝負,3分和0分的差距是巨大的。 

說到防守,大家可能印象中防守弱的球隊都不夠兇狠,就是平時說的踢球比較干凈,我們統計了犯規走勢圖,其實大體上看,和西甲平均值相差無幾,西甲本身就不是強調身體的聯賽。實際看來,西班牙人的丟球主要源于漏人和被人打反擊。西班牙人和巴塞羅那同屬一個地區,其實踢球的風格也相差無幾。在球員能力嚴重不足的情況下去打全攻全守的足球,去打傳控足球無異于自殺,中場丟球被人打反擊就是本賽季西班牙人的寫照。

西班牙人的降級真的是防守問題大于進攻問題,防守才是定位于小球會的球隊立足之本。武磊的確浪費了不少機會,但每場觸球都是個位數,也是挺難為武磊的,大家都在說孫興慜厲害,但是孫興慜浪費的機會、拿球的機會都要比武磊多很多,只能說他贏得了信任,拿球機會多了,形成了正向循環,武磊還沒有真正贏得五大聯 賽的最重。

02數據分析步驟

我們使用Python獲取了球探體育網站上西班牙人的球隊數據,地址:

http://zq.win007.com/cn/team/Summary/100.html

以下展示部分分析代碼:

首先導入所需包,其中pandas用于數據讀入和數據整理,pyecharts用于數據可視化分析。

import pandas as pd 

from pyecharts.charts import Bar, Pie, Line, Page
from pyecharts import options as opts 

1數據讀入

該數據包含了西班牙人球隊2013-08-20至2020-07-17日比賽數據,數據預覽如下:

# 讀入數據
df_4 = pd.read_excel('../data/球探體育比賽數據.xlsx')

# 提取日期
df_4['日期'] = df_4['時間'].str.split(' ').str[0]
df_4.head() 

2數據預處理

去掉友誼賽的數據并按照日期進行升序排序。

# 去掉友誼賽
df_4 = df_4[df_4['比賽']!='球會友誼']

# 排序
df_4 = df_4.sort_values('日期')
df_4.shape

3數據可視化

3.1 賽季 2019-07-26 - 今 西班牙得分走勢圖

# 篩選時間
df_sel2 = df_4[(df_4['日期'] >= '2019-07-26')]
df_sel2.head() 
# 提西班牙人 主隊比分
zhudui = df_sel2[df_sel2['主隊']=='西班牙人'][['日期', '比分']]
# 分數
zhudui['分數'] = zhudui['比分'].str.split('-').str[0].astype('int')

# 提西班牙人 客隊比分
kedui = df_sel2[df_sel2['客隊']=='西班牙人'][['日期', '比分']]
# 分數
kedui['分數'] = kedui['比分'].str.split('-').str[1].astype('int')

# 提取日期
riqi = df_sel2[['日期']]

# 合并數據
riqi = pd.merge(riqi, zhudui[['日期', '分數']], on='日期', how='left') 
riqi = pd.merge(riqi, kedui[['日期', '分數']], on='日期', how='left')
riqi.columns = ['日期', '主隊分數', '客隊分數']

# 填補空值
riqi = riqi.fillna(0)
# 分數相加
riqi['分數'] = riqi['主隊分數'] + riqi['客隊分數'] 
riqi.head() 
# 產生數據
x_data = riqi['日期'].values.tolist()
y_data = riqi['分數'].values.tolist()

# 折線圖
line5 = Line(init_opts=opts.InitOpts(width='1350px', height='750px'))
line5.add_xaxis(x_data)
line5.add_yaxis('', y_data,
                label_opts=opts.LabelOpts(is_show=False), 
                markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="min"),
                                                        opts.MarkPointItem(type_="max"),]),
               )   
line5.set_global_opts(title_opts=opts.TitleOpts(title='西班牙球隊得分走勢(2019.07.26-至今)'), 
                      xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate='45'),
                                               axisline_opts=opts.AxisLineOpts(is_on_zero=False),
                                              ),
                      yaxis_opts=opts.AxisOpts(max_=10, min_=-1,
                        name="",
                        type_="value",
                        axislabel_opts=opts.LabelOpts(formatter="{value}"),
                        splitline_opts=opts.SplitLineOpts(is_show=False),   
                    )
                     ) 
line5.set_series_opts(linestyle_opts=opts.LineStyleOpts(width=3, color='#4169E1'))
line5.render() 

3.2 賽季 2019-07-26 - 今 西班牙得分分布

# 計算得分
score_num = riqi['分數'].value_counts()

# 產生數據
data_pair = [list(z) for z in zip([str(i) + '分'for i in score_num.index], score_num.values.tolist())]

# 繪制餅圖
pie5 = Pie(init_opts=opts.InitOpts(width='1350px', height='750px'))
pie5.add('', data_pair, radius=['35%', '60%'])
pie5.set_global_opts(title_opts=opts.TitleOpts(title='西班牙球隊得分分布(2019.07.26-至今)'), 
                     legend_opts=opts.LegendOpts(orient='vertical', pos_top='15%', pos_left='2%'))
pie5.set_series_opts(label_opts=opts.LabelOpts(formatter=": {c} \n占比({d}%)"))
pie5.set_colors(['#EF9050', '#3B7BA9', '#6FB27C', '#FFAF34', '#D8BFD8', '#00BFFF', '#7FFFAA'])
pie5.render() 

3.3 賽季 2019-07-26 - 今 西班牙球隊犯規 黃牌 紅牌

# 篩選時間
df_sel2 = df_4[(df_4['日期'] >= '2019-07-26')]

# 產生數據
x_data = df_sel2['日期'].values.tolist()
y_data1 = df_sel2['犯規'].values.tolist()
y_data2 = df_sel2['黃牌'].values.tolist()
y_data3 = df_sel2['紅牌'].values.tolist()
折線圖
line6 = Line(init_opts=opts.InitOpts(width='1350px', height='750px'))
line6.add_xaxis(x_data) 
line6.add_yaxis('犯規', y_data1,
                markpoint_opts=opts.MarkPointOpts(data=[
                    opts.MarkPointItem(type_='max', name='最大值'),
                    opts.MarkPointItem(type_='min', name='最小值')
                ])) 
line6.add_yaxis('黃牌', y_data2,
                markpoint_opts=opts.MarkPointOpts(data=[
                    opts.MarkPointItem(type_='max', name='最大值'),
                    opts.MarkPointItem(type_='min', name='最小值')
                ])) 
line6.add_yaxis('紅牌', y_data3,
                markpoint_opts=opts.MarkPointOpts(data=[
                    opts.MarkPointItem(type_='max', name='最大值'),
                    opts.MarkPointItem(type_='min', name='最小值')
                ])) 
line6.set_global_opts(title_opts=opts.TitleOpts(title='西班牙球隊犯規-黃牌-紅牌走勢圖(2019.07.26-至今)'), 
                      xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate='45'),
                                               axisline_opts=opts.AxisLineOpts(is_on_zero=False)),
                      yaxis_opts=opts.AxisOpts(max_=30, min_=0,
                        name="",
                        type_="value",
                        axislabel_opts=opts.LabelOpts(formatter="{value}"),
                        splitline_opts=opts.SplitLineOpts(is_show=False),   
                    )
                     ) 
line6.set_series_opts(label_opts=opts.LabelOpts(is_show=False), 
                      linestyle_opts=opts.LineStyleOpts(width=3)  
                     )
line6.render() 

結語

本賽季,到底是武磊配不上西班牙人,還是西班牙人配不上武磊,這個還是留給大家去評判,可以留言給我們,說出你的觀點。

如果還想看任何體育相關的數據分析

同樣請給我們留言吧

我們立刻安排上!

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢