Soccer is my most favorite sport, which charming by how 22 people fighting for a ball a put it into opponent's net. While most player are only allowed to play by foot, the only the goalkeeper are allowed to use the hand. With their special privilige, it is undoubtedly the most important position on the field, with players may even decide the win and loss of their team. In FIFA World Cup Final just 3 months ago, I have witnessed France loss the title to Argentina in the final minutes by the save of Martinez. Therefore, I believe research about factors that affect their form will be vital to a team win or loss.
Emilio Martinez Final Minutes Save Against France (FIFA World Cup 2022 Final):
Goalkeeper role: https://en.wikipedia.org/wiki/Goalkeeper_(association_football)#Responsibilities
Statistics recorded of goalkeepers in English Premier League season 2021/2022 We will able to find the relations between factors. In particular, I will be able find the link between the players' minute played and weekly salary vs their perfomance, particularly in their save percentage as well as their clean sheet percentage. By comparing those data, we will be able to adjust time played and salary that will optimize the wining percentage of the Goalkeeper. ('How data might solve the problem')
Source: https://www.kaggle.com/datasets/xibilolu/epl21?select=gk.csv
import pandas as pd
import numpy as np
# load dataset
dataset = pd.read_csv('Downloads/gk.csv')
head_array = dataset.columns.values
# dictionary explains column headers
data_dictionary = {'players' : 'player names', 'squad' : 'clubs', 'avgmpld' : 'average matches played (total minutes played/90)',
'weekly' : 'weekly wages', 'ga' : 'goals scored against', 'ga/90' : 'goals scored against every 90 minutes',
'sota' : 'shot on target against','saves' : 'saves made', 'save%' : 'percentage of saves made', 'w' : 'wins', 'd' :'draws', 'l' : 'losses',
'cs' : 'clean sheet', 'cs%' : 'percentage of clean sheet games', 'pkatt' : 'penalties attempted against',
'pka' : 'penalties scored against', 'pksv' : 'penalties saved', 'pkm' : 'penalties missed against'}
print(data_dictionary['pksv'])
penalties saved
dataset.head()
players | squad | avgmpld | weekly | ga | ga/90 | sota | saves | save% | w | d | l | cs | cs% | pkatt | pka | pksv | pkm | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Alisson | Liverpool | 36.0 | 150000 | 24 | 0.67 | 97 | 73 | 75.3 | 27 | 7 | 2 | 20 | 55.6 | 0 | 0 | 0 | 0 |
1 | Alphonse Areola | West Ham | 1.0 | 140000 | 1 | 1.00 | 3 | 2 | 66.7 | 0 | 0 | 1 | 0 | 0.0 | 0 | 0 | 0 | 0 |
2 | Kepa Arrizabalaga | Chelsea | 4.0 | 150000 | 2 | 0.50 | 13 | 11 | 84.6 | 2 | 1 | 1 | 2 | 50.0 | 0 | 0 | 0 | 0 |
3 | Daniel Bachmann | Watford | 12.0 | 3269 | 28 | 2.33 | 69 | 45 | 63.8 | 1 | 0 | 11 | 0 | 0.0 | 3 | 3 | 0 | 0 |
4 | Asmir Begovic | Everton | 3.0 | 18077 | 8 | 2.67 | 17 | 11 | 58.8 | 1 | 0 | 2 | 1 | 33.3 | 1 | 1 | 0 | 0 |