見出し画像

スポーツデータで楽しむ(FIFAワールドカップ2018③ラグビーワールドカップ2019比較編)

こんにちは。Jackalistです。
いつも記事をご覧いただき誠にありがとうございます。

それでは本日も早速、スポーツデータで楽しみましょう。

今回のテーマについて

全10回を通じて、ラグビーワールドカップ2019とFIFAワールドカップ2018出場選手の身長・体重・年齢等を使って、気になる点を分析してみました。

今回は、今までの締めとして、これまで使ったデータを元に、ラグビー・サッカーの比較をしたいと思います。

両大会の基本情報(年齢・身長・体重・キャップ数)を再確認

まずは、両大会の基本情報を再確認します。各項目の考察について興味がある方は、過去記事もご覧頂けると嬉しいです。

両大会の基本情報(年齢・身長・体重)を結合してみる

新しく学んだ関数を使って結合してみます。
背番号など不要情報は削除、カラムの順番・名前も併せて統一してみます。

#サッカー、"#"列削除、列順変更、列名変換
FIFA2018_describe = FIFA2018.describe().drop("#",axis=1).iloc[:,[2,0,1]].rename(columns={"Height": "height","Weight":"weight"})
FIFA2018_describe
#ラグビー、不要列削除
RWC2019_describe = RWC2019.describe().drop(["pid","caps"],axis=1)
RWC2019_describe
#結合
pd.concat([FIFA2018_describe, RWC2019_describe], axis=1)

左3列がFIFA2018(対象数736名)、右3列がRWC2019(対象数620名)です。結合した際に、両大会の上にタイトルを出したかったのですが、少し時間がかかりそうなので、また次回にしたいと思います。

身長・体重を散布図で比較してみる

RWC2019に関しては、こちらで描画しました。

まずはFIFA2018について確認します。

 #サッカーW杯2018の身長・体重散布図
F_height = FIFA2018["Height"]
F_weight = FIFA2018["Weight"]
plt.scatter(F_weight,F_height,color='tomato')
plt.xlabel('weight')
plt.ylabel("height")
plt.title("FIFA2018 Players")
#plt.legend()
plt.show()

次にRWC2019の散布図と重ねてみます。

#両大会の体重・身長散布図を重ねてみる
plt.scatter(weight,height, label='RWC2019', color='aqua')
plt.scatter(F_weight,F_height,  label='FIFA2018', color='tomato')
plt.xlabel('weight')
plt.ylabel("height")
plt.title("RWC2019 v FIFA2018 Plyaers")
plt.legend()
plt.show()

身長・体重ともにRWC2019の方が幅広いことが分かります。
前回記事で触れましたが、FIFA2018で右に少し外れている選手を集めて、ラグビーをしたらそこそこ強いチームが出来るかもしれませんね。

参考までに、FIFA2018の出場選手で95キロ以上を確認してみます。

#FIFA2018 95キロ以上
weight_max_F = FIFA2018.query("Weight >= 95")
pd.DataFrame(weight_max_F)

強そうなメンバーですね。

ちなみにサッカー→ラグビーでなく、その逆が公式でツイートされてました。このメンバーでのサッカーの試合観てみたい。

最後にポジション別で体重も確認してみましょう。

#FIFA 2018
F_pos = FIFA2018["Pos."]
F_weight = FIFA2018["Weight"]
plt.scatter(F_weight,F_pos,color='tomato')
plt.xlabel('weight')
plt.ylabel("Pos.")
plt.title("FIFA2018 Players weight")
plt.legend()
plt.show()

#RWC2019
pos = RWC2019["pos"]
weight = RWC2019["weight"]
plt.scatter(weight,pos,color='aqua')
plt.xlabel('weight')
plt.ylabel("pos")
plt.title("RWC2019 Players weight")
plt.legend()
plt.show()

抽出しながら思いましたが、ポジションを更に細分化しないとなんとも言えないですね。。
これはまた次の機会に、データが揃ってそうなプレミアあたりでやってみましょう。

次にラグビーです。この左右に外れ値があるあたりがラグビーっぽいですね。

まとめ

全10回を通じて、pythonで学んだことを活かしながら、ラグビーワールドカップ・FIFAワールドカップのデータを確認しました。

ひとまずnoteでの目標だった10投稿は達成したので、次回は今までの振り返りをしたいと思います。

今後も、スポーツデータに関する記事を投稿していく予定ですので、良かったら、スキ・フォローを頂けるとめちゃくちゃ嬉しいです。

それでは本日もありがとうございました。

この記事が気に入ったらサポートをしてみませんか?