見出し画像

スポーツデータで楽しむ(ラグビーワールドカップ チーム別大会通算得失点)

こんにちは。Jackalistです。

本日もスポーツデータで楽しみましょう

前回の振り返り

前回は、歴代大会別の総得点推移を確認して、2003年大会が過去最多でした。

今回は、歴代大会(第1回1987年-第9回2019年)のチーム別通算得失点を確認したいと思います。

データの再確認・下処理・集計

前回使用したデータを再確認します。

画像1

下処理・集計の方法としては、

① 通算得点を出す
 Team1のTeam1 Score・Team2のTeam2 Scoreを抽出・結合
 Team1・2でチームが被るためグルーピングしてScoreを1つにする
② 通算失点を出す
 Team1のTeam2 Score・Team2のTeam1 Scoreを抽出・結合
 Team1・2でチームが被るためグルーピングしてScoreを1つにする
③ ①と②を結合する

といった感じで、早速やっていきます。

#総得点下処理
#Team1のTeam1スコア合計を算出
RWC_TEAM1_win = RWC.groupby("Team 1").sum().drop(["Year","Team 2 Score","Total Score"],axis=1)
RWC_TEAM1_win

#Team2のTeam2スコア合計を算出
RWC_TEAM2_win = RWC.groupby("Team 2").sum().drop(["Year","Team 1 Score","Total Score"],axis=1)
RWC_TEAM2_win

#両方のスコアを結合する
RWC_Team_win = pd.concat([RWC_TEAM1_win,RWC_TEAM2_win],join="outer")
RWC_Team_win.index.name = "Team"
RWC_Team_win

#結合したものを、グループ化して整える
RWC_Team_win = RWC_Team_win.groupby("Team").sum()
RWC_Team_win

#列同士を足して合計を計算した列を追加
RWC_Team_win = pd.DataFrame(RWC_Team_win["Team 1 Score"] + RWC_Team_win["Team 2 Score"])
RWC_Team_win

#index名を変更
RWC_Team_win_z = RWC_Team_win.rename(columns = {0:"Total Score"})

#データの行数
#pd.set_option('display.max_rows', 15) 
RWC_Team_win_z

画像2

ジンバブエ・・懐かしい国が出てきましたね。問題なさそうなので、通算失点も同じ処理をします。

#総失点 総得点と同じ作業をする
RWC_TEAM1_lost = RWC.groupby("Team 1").sum().drop(["Year","Team 1 Score","Total Score"],axis=1)
RWC_TEAM1_lost

RWC_TEAM2_lost = RWC.groupby("Team 2").sum().drop(["Year","Team 2 Score","Total Score"],axis=1)
RWC_TEAM2_lost

RWC_Team_lost = pd.concat([RWC_TEAM1_lost,RWC_TEAM2_lost],join="outer")
RWC_Team_lost.index.name = "Team"
RWC_Team_lost

RWC_Team_lost = RWC_Team_lost.groupby("Team").sum()
RWC_Team_lost

RWC_Team_lost = pd.DataFrame(RWC_Team_lost["Team 1 Score"] + RWC_Team_lost["Team 2 Score"])
RWC_Team_lost

RWC_Team_lost_z = RWC_Team_lost.rename(columns = {0:"Total Lost Score"})
RWC_Team_lost_z 

画像3

最後に得点と失点を結合させます。

#得点失点結合
RWC_Team_win_z
RWC_Team_lost_z
RWC_Points = pd.merge(RWC_Team_win_z,RWC_Team_lost_z,on="Team").sort_values("Total Score",ascending=False)

#描画の見栄え的にアメリカの文字の長さを短くする
RWC_Points = RWC_Points.rename(index={"United States of America":"USA"})

RWC_Points

スクリーンショット 2020-12-29 0.28.48

問題なさそうですね。描画してみましょう。

棒グラフで確認・所感

#棒グラフ
RWC_Points.plot(kind="bar",figsize=(9,6),color=["Blue","Red","green"],width=0.8)
plt.legend(fontsize=10)
plt.xlabel("Team",fontsize=15)
#plt.ylabel("Team",fontsize=20)
plt.xticks(fontsize = 15)
plt.yticks(fontsize = 15)
plt.title("Total score and lost score in RWC", fontsize=20)
plt.tight_layout()
plt.show()

画像5

青が通算得点、赤が通算失点です。特に考察することもないのですが、気になった点は

ニュージーランド点取りすぎ
日本は今だに大会通算失点数が1位
フランスは得点も多いが、失点も多い

といったとこでしょうか。
ちなみにご存知の方も多いと思いますが、1試合のワースト失点記録を持っているのは日本です。
1995年のニュージーランド戦で145点という歴史的大敗は、日本ラグビーの汚点と言われ、ここから国内のラグビー人気は長きにわたる下降局面に突入します。

この記録は、サッカーワールドカップのように出場国を大幅に増やさない限り、おそらく今後破られないのではないかと思います。

それにしても、この20年後南アフリカに勝つなんて、誰一人思わなかったでしょうね。

さて本日はこれで終わりにします。

次回はさらにチーム・大会別に分けて描画・確認したいと思います。

良ければモチベーション維持になるのでフォロー・スキを頂けるとめちゃくちゃ嬉しいです。

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

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