{ "cells": [ { "cell_type": "markdown", "id": "d065632b", "metadata": {}, "source": [ "Scraping from http://fbref.com\n", "\n", "Data:\n", "- outfield players stats\n", "- goalkeepers stats\n", "- team stats (of and against)\n", "\n", "Original code by parth1902:\n", "https://github.com/parth1902/Scrape-FBref-data" ] }, { "cell_type": "code", "execution_count": 1, "id": "3b8d2e7f", "metadata": {}, "outputs": [], "source": [ "import requests\n", "from bs4 import BeautifulSoup\n", "import pandas as pd\n", "import numpy as np\n", "import re\n", "import sys, getopt\n", "import csv\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "ab920c85", "metadata": {}, "outputs": [], "source": [ "#standard(stats)\n", "stats = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"games\",\"games_starts\",\"minutes\",\"goals\",\"assists\",\"pens_made\",\"pens_att\",\"cards_yellow\",\"cards_red\",\"goals_per90\",\"assists_per90\",\"goals_assists_per90\",\"goals_pens_per90\",\"goals_assists_pens_per90\",\"xg\",\"npxg\",\"xa\",\"xg_per90\",\"xa_per90\",\"xg_xa_per90\",\"npxg_per90\",\"npxg_xa_per90\"]\n", "stats3 = [\"players_used\",\"possession\",\"games\",\"games_starts\",\"minutes\",\"goals\",\"assists\",\"pens_made\",\"pens_att\",\"cards_yellow\",\"cards_red\",\"goals_per90\",\"assists_per90\",\"goals_assists_per90\",\"goals_pens_per90\",\"goals_assists_pens_per90\",\"xg\",\"npxg\",\"xa\",\"xg_per90\",\"xa_per90\",\"xg_xa_per90\",\"npxg_per90\",\"npxg_xa_per90\"] \n", "#goalkeeping(keepers)\n", "keepers = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"gk_games\",\"gk_games_starts\",\"gk_minutes\",\"gk_goals_against\",\"gk_goals_against_per90\",\"gk_shots_on_target_against\",\"gk_saves\",\"gk_save_pct\",\"gk_wins\",\"gk_ties\",\"gk_losses\",\"gk_clean_sheets\",\"gk_clean_sheets_pct\",\"gk_pens_att\",\"gk_pens_allowed\",\"gk_pens_saved\",\"gk_pens_missed\"]\n", "keepers3 = [\"players_used\",\"gk_games\",\"gk_games_starts\",\"gk_minutes\",\"gk_goals_against\",\"gk_goals_against_per90\",\"gk_shots_on_target_against\",\"gk_saves\",\"gk_save_pct\",\"gk_wins\",\"gk_ties\",\"gk_losses\",\"gk_clean_sheets\",\"gk_clean_sheets_pct\",\"gk_pens_att\",\"gk_pens_allowed\",\"gk_pens_saved\",\"gk_pens_missed\"]\n", "#advance goalkeeping(keepersadv)\n", "keepersadv = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"gk_goals_against\",\"gk_pens_allowed\",\"gk_free_kick_goals_against\",\"gk_corner_kick_goals_against\",\"gk_own_goals_against\",\"gk_psxg\",\"gk_psnpxg_per_shot_on_target_against\",\"gk_psxg_net\",\"gk_psxg_net_per90\",\"gk_passes_completed_launched\",\"gk_passes_launched\",\"gk_passes_pct_launched\",\"gk_passes\",\"gk_passes_throws\",\"gk_pct_passes_launched\",\"gk_passes_length_avg\",\"gk_goal_kicks\",\"gk_pct_goal_kicks_launched\",\"gk_goal_kick_length_avg\",\"gk_crosses\",\"gk_crosses_stopped\",\"gk_crosses_stopped_pct\",\"gk_def_actions_outside_pen_area\",\"gk_def_actions_outside_pen_area_per90\",\"gk_avg_distance_def_actions\"]\n", "keepersadv2 = [\"minutes_90s\",\"gk_goals_against\",\"gk_pens_allowed\",\"gk_free_kick_goals_against\",\"gk_corner_kick_goals_against\",\"gk_own_goals_against\",\"gk_psxg\",\"gk_psnpxg_per_shot_on_target_against\",\"gk_psxg_net\",\"gk_psxg_net_per90\",\"gk_passes_completed_launched\",\"gk_passes_launched\",\"gk_passes_pct_launched\",\"gk_passes\",\"gk_passes_throws\",\"gk_pct_passes_launched\",\"gk_passes_length_avg\",\"gk_goal_kicks\",\"gk_pct_goal_kicks_launched\",\"gk_goal_kick_length_avg\",\"gk_crosses\",\"gk_crosses_stopped\",\"gk_crosses_stopped_pct\",\"gk_def_actions_outside_pen_area\",\"gk_def_actions_outside_pen_area_per90\",\"gk_avg_distance_def_actions\"]\n", "#shooting(shooting)\n", "shooting = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"goals\",\"pens_made\",\"pens_att\",\"shots_total\",\"shots_on_target\",\"shots_free_kicks\",\"shots_on_target_pct\",\"shots_total_per90\",\"shots_on_target_per90\",\"goals_per_shot\",\"goals_per_shot_on_target\",\"xg\",\"npxg\",\"npxg_per_shot\",\"xg_net\",\"npxg_net\"]\n", "shooting2 = [\"minutes_90s\",\"goals\",\"pens_made\",\"pens_att\",\"shots_total\",\"shots_on_target\",\"shots_free_kicks\",\"shots_on_target_pct\",\"shots_total_per90\",\"shots_on_target_per90\",\"goals_per_shot\",\"goals_per_shot_on_target\",\"xg\",\"npxg\",\"npxg_per_shot\",\"xg_net\",\"npxg_net\"]\n", "shooting3 = [\"goals\",\"pens_made\",\"pens_att\",\"shots_total\",\"shots_on_target\",\"shots_free_kicks\",\"shots_on_target_pct\",\"shots_total_per90\",\"shots_on_target_per90\",\"goals_per_shot\",\"goals_per_shot_on_target\",\"xg\",\"npxg\",\"npxg_per_shot\",\"xg_net\",\"npxg_net\"]\n", "#passing(passing)\n", "passing = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"passes_completed\",\"passes\",\"passes_pct\",\"passes_total_distance\",\"passes_progressive_distance\",\"passes_completed_short\",\"passes_short\",\"passes_pct_short\",\"passes_completed_medium\",\"passes_medium\",\"passes_pct_medium\",\"passes_completed_long\",\"passes_long\",\"passes_pct_long\",\"assists\",\"xa\",\"xa_net\",\"assisted_shots\",\"passes_into_final_third\",\"passes_into_penalty_area\",\"crosses_into_penalty_area\",\"progressive_passes\"]\n", "passing2 = [\"passes_completed\",\"passes\",\"passes_pct\",\"passes_total_distance\",\"passes_progressive_distance\",\"passes_completed_short\",\"passes_short\",\"passes_pct_short\",\"passes_completed_medium\",\"passes_medium\",\"passes_pct_medium\",\"passes_completed_long\",\"passes_long\",\"passes_pct_long\",\"assists\",\"xa\",\"xa_net\",\"assisted_shots\",\"passes_into_final_third\",\"passes_into_penalty_area\",\"crosses_into_penalty_area\",\"progressive_passes\"]\n", "#passtypes(passing_types)\n", "passing_types = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"passes\",\"passes_live\",\"passes_dead\",\"passes_free_kicks\",\"through_balls\",\"passes_pressure\",\"passes_switches\",\"crosses\",\"corner_kicks\",\"corner_kicks_in\",\"corner_kicks_out\",\"corner_kicks_straight\",\"passes_ground\",\"passes_low\",\"passes_high\",\"passes_left_foot\",\"passes_right_foot\",\"passes_head\",\"throw_ins\",\"passes_other_body\",\"passes_completed\",\"passes_offsides\",\"passes_oob\",\"passes_intercepted\",\"passes_blocked\"]\n", "passing_types2 = [\"passes\",\"passes_live\",\"passes_dead\",\"passes_free_kicks\",\"through_balls\",\"passes_pressure\",\"passes_switches\",\"crosses\",\"corner_kicks\",\"corner_kicks_in\",\"corner_kicks_out\",\"corner_kicks_straight\",\"passes_ground\",\"passes_low\",\"passes_high\",\"passes_left_foot\",\"passes_right_foot\",\"passes_head\",\"throw_ins\",\"passes_other_body\",\"passes_completed\",\"passes_offsides\",\"passes_oob\",\"passes_intercepted\",\"passes_blocked\"]\n", "#goal and shot creation(gca)\n", "gca = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"sca\",\"sca_per90\",\"sca_passes_live\",\"sca_passes_dead\",\"sca_dribbles\",\"sca_shots\",\"sca_fouled\",\"gca\",\"gca_per90\",\"gca_passes_live\",\"gca_passes_dead\",\"gca_dribbles\",\"gca_shots\",\"gca_fouled\",\"gca_defense\"]\n", "gca2 = [\"sca\",\"sca_per90\",\"sca_passes_live\",\"sca_passes_dead\",\"sca_dribbles\",\"sca_shots\",\"sca_fouled\",\"gca\",\"gca_per90\",\"gca_passes_live\",\"gca_passes_dead\",\"gca_dribbles\",\"gca_shots\",\"gca_fouled\",\"gca_defense\"]\n", "#defensive actions(defense)\n", "defense = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"tackles\",\"tackles_won\",\"tackles_def_3rd\",\"tackles_mid_3rd\",\"tackles_att_3rd\",\"dribble_tackles\",\"dribbles_vs\",\"dribble_tackles_pct\",\"dribbled_past\",\"pressures\",\"pressure_regains\",\"pressure_regain_pct\",\"pressures_def_3rd\",\"pressures_mid_3rd\",\"pressures_att_3rd\",\"blocks\",\"blocked_shots\",\"blocked_shots_saves\",\"blocked_passes\",\"interceptions\",\"clearances\",\"errors\"]\n", "defense2 = [\"tackles\",\"tackles_won\",\"tackles_def_3rd\",\"tackles_mid_3rd\",\"tackles_att_3rd\",\"dribble_tackles\",\"dribbles_vs\",\"dribble_tackles_pct\",\"dribbled_past\",\"pressures\",\"pressure_regains\",\"pressure_regain_pct\",\"pressures_def_3rd\",\"pressures_mid_3rd\",\"pressures_att_3rd\",\"blocks\",\"blocked_shots\",\"blocked_shots_saves\",\"blocked_passes\",\"interceptions\",\"clearances\",\"errors\"]\n", "#possession(possession)\n", "possession = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"touches\",\"touches_def_pen_area\",\"touches_def_3rd\",\"touches_mid_3rd\",\"touches_att_3rd\",\"touches_att_pen_area\",\"touches_live_ball\",\"dribbles_completed\",\"dribbles\",\"dribbles_completed_pct\",\"players_dribbled_past\",\"nutmegs\",\"carries\",\"carry_distance\",\"carry_progressive_distance\",\"progressive_carries\",\"carries_into_final_third\",\"carries_into_penalty_area\",\"pass_targets\",\"passes_received\",\"passes_received_pct\",\"miscontrols\",\"dispossessed\"]\n", "possession2 = [\"touches\",\"touches_def_pen_area\",\"touches_def_3rd\",\"touches_mid_3rd\",\"touches_att_3rd\",\"touches_att_pen_area\",\"touches_live_ball\",\"dribbles_completed\",\"dribbles\",\"dribbles_completed_pct\",\"players_dribbled_past\",\"nutmegs\",\"carries\",\"carry_distance\",\"carry_progressive_distance\",\"progressive_carries\",\"carries_into_final_third\",\"carries_into_penalty_area\",\"pass_targets\",\"passes_received\",\"passes_received_pct\",\"miscontrols\",\"dispossessed\"]\n", "#playingtime(playingtime)\n", "playingtime = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"games\",\"minutes\",\"minutes_per_game\",\"minutes_pct\",\"games_starts\",\"minutes_per_start\",\"games_subs\",\"minutes_per_sub\",\"unused_subs\",\"points_per_match\",\"on_goals_for\",\"on_goals_against\",\"plus_minus\",\"plus_minus_per90\",\"plus_minus_wowy\",\"on_xg_for\",\"on_xg_against\",\"xg_plus_minus\",\"xg_plus_minus_per90\",\"xg_plus_minus_wowy\"]\n", "playingtime2 = [\"games\",\"minutes\",\"minutes_per_game\",\"minutes_pct\",\"games_starts\",\"minutes_per_start\",\"games_subs\",\"minutes_per_sub\",\"unused_subs\",\"points_per_match\",\"on_goals_for\",\"on_goals_against\",\"plus_minus\",\"plus_minus_per90\",\"plus_minus_wowy\",\"on_xg_for\",\"on_xg_against\",\"xg_plus_minus\",\"xg_plus_minus_per90\",\"xg_plus_minus_wowy\"]\n", "#miscallaneous(misc)\n", "misc = [\"player\",\"nationality\",\"position\",\"team\",\"age\",\"birth_year\",\"minutes_90s\",\"cards_yellow\",\"cards_red\",\"cards_yellow_red\",\"fouls\",\"fouled\",\"offsides\",\"crosses\",\"interceptions\",\"tackles_won\",\"pens_won\",\"pens_conceded\",\"own_goals\",\"ball_recoveries\",\"aerials_won\",\"aerials_lost\",\"aerials_won_pct\"]\n", "misc2 = [\"cards_yellow\",\"cards_red\",\"cards_yellow_red\",\"fouls\",\"fouled\",\"offsides\",\"crosses\",\"interceptions\",\"tackles_won\",\"pens_won\",\"pens_conceded\",\"own_goals\",\"ball_recoveries\",\"aerials_won\",\"aerials_lost\",\"aerials_won_pct\"]\n", "\n", "def get_tables(url,text):\n", " headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}\n", "\n", " res = requests.get(url, headers = headers)\n", " ## The next two lines get around the issue with comments breaking the parsing.\n", " comm = re.compile(\"\")\n", " soup = BeautifulSoup(comm.sub(\"\",res.text),'lxml')\n", " all_tables = soup.findAll(\"tbody\")\n", " \n", " team_table = all_tables[0]\n", " team_vs_table = all_tables[1]\n", " player_table = all_tables[2]\n", " if text == 'for':\n", " return player_table, team_table\n", " if text == 'vs':\n", " return player_table, team_vs_table\n", "\n", "def get_frame(features, player_table):\n", " pre_df_player = dict()\n", " features_wanted_player = features\n", " rows_player = player_table.find_all('tr')\n", " for row in rows_player:\n", " if(row.find('th',{\"scope\":\"row\"}) != None):\n", " \n", " for f in features_wanted_player:\n", " cell = row.find(\"td\",{\"data-stat\": f})\n", " if(cell == None):\n", " continue\n", " a = cell.text.strip().encode()\n", " text=a.decode(\"utf-8\")\n", " if(text == ''):\n", " text = '0'\n", " if((f!='player')&(f!='nationality')&(f!='position')&(f!='squad')&(f!='age')&(f!='birth_year')&(f!='team')):\n", " text = float(text.replace(',','')) \n", " if f in pre_df_player:\n", " pre_df_player[f].append(text)\n", " else:\n", " pre_df_player[f] = [text]\n", " df_player = pd.DataFrame.from_dict(pre_df_player)\n", " return df_player\n", "\n", "def get_frame_team(features, team_table):\n", " pre_df_squad = dict()\n", " #Note: features does not contain squad name, it requires special treatment\n", " features_wanted_squad = features\n", " rows_squad = team_table.find_all('tr')\n", " for row in rows_squad:\n", " if(row.find('th',{\"scope\":\"row\"}) != None):\n", " name = row.find('th',{\"data-stat\":\"team\"}).text.strip().encode().decode(\"utf-8\")\n", " if 'team' in pre_df_squad:\n", " pre_df_squad['team'].append(name)\n", " else:\n", " pre_df_squad['team'] = [name]\n", " for f in features_wanted_squad:\n", " cell = row.find(\"td\",{\"data-stat\": f})\n", " if(cell == None):\n", " continue\n", " a = cell.text.strip().encode()\n", " text=a.decode(\"utf-8\")\n", " if(text == ''):\n", " text = '0'\n", " if((f!='player')&(f!='nationality')&(f!='position')&(f!='squad')&(f!='age')&(f!='birth_year')&(f!='team')):\n", " text = float(text.replace(',',''))\n", " if f in pre_df_squad:\n", " pre_df_squad[f].append(text)\n", " else:\n", " pre_df_squad[f] = [text]\n", " df_squad = pd.DataFrame.from_dict(pre_df_squad)\n", " return df_squad\n", "\n", "def get_frame_team_2(features, team_table):\n", " pre_df_squad = dict()\n", " #Note: features does not contain squad name, it requires special treatment\n", " features_wanted_squad = features\n", " rows_squad = team_table.find_all('tr')\n", " for row in rows_squad:\n", " if(row.find('th',{\"scope\":\"row\"}) != None):\n", " name = row.find('th',{\"data-stat\":\"squad\"}).text.strip().encode().decode(\"utf-8\")\n", " if 'squad' in pre_df_squad:\n", " pre_df_squad['squad'].append(name)\n", " else:\n", " pre_df_squad['squad'] = [name]\n", " for f in features_wanted_squad:\n", " cell = row.find(\"td\",{\"data-stat\": f})\n", " a = cell.text.strip().encode()\n", " text=a.decode(\"utf-8\")\n", " if(text == ''):\n", " text = '0'\n", " if((f!='player')&(f!='nationality')&(f!='position')&(f!='squad')&(f!='age')&(f!='birth_year')&(f!='team')):\n", " text = float(text.replace(',',''))\n", " print(f)\n", " if f in pre_df_squad:\n", " pre_df_squad[f].append(text)\n", " else:\n", " pre_df_squad[f] = [text]\n", " df_squad = pd.DataFrame.from_dict(pre_df_squad)\n", " return df_squad\n", "\n", "def frame_for_category(category,top,end,features):\n", " url = (top + category + end)\n", " player_table, team_table = get_tables(url,'for')\n", " df_player = get_frame(features, player_table)\n", " return df_player\n", "\n", "def frame_for_category_team(category,top,end,features,text):\n", " url = (top + category + end)\n", " player_table, team_table = get_tables(url,text)\n", " df_team = get_frame_team(features, team_table)\n", " return df_team\n", "\n", "\n", "\n", "\n", "#Function to get the player data for outfield player, includes all categories - standard stats, shooting\n", "#passing, passing types, goal and shot creation, defensive actions, possession, and miscallaneous\n", "def get_outfield_data(top, end):\n", " df1 = frame_for_category('stats',top,end,stats)\n", " df2 = frame_for_category('shooting',top,end,shooting2)\n", " df3 = frame_for_category('passing',top,end,passing2)\n", " df4 = frame_for_category('passing_types',top,end,passing_types2)\n", " df5 = frame_for_category('gca',top,end,gca2)\n", " df6 = frame_for_category('defense',top,end,defense2)\n", " df7 = frame_for_category('possession',top,end,possession2)\n", " df8 = frame_for_category('misc',top,end,misc2)\n", " df = pd.concat([df1, df2, df3, df4, df5, df6, df7, df8], axis=1)\n", " df = df.loc[:,~df.columns.duplicated()]\n", " return df\n", "\n", "\n", "#Function to get keeping and advance goalkeeping data\n", "def get_keeper_data(top,end):\n", " df1 = frame_for_category('keepers',top,end,keepers)\n", " df2 = frame_for_category('keepersadv',top,end,keepersadv2)\n", " df = pd.concat([df1, df2], axis=1)\n", " df = df.loc[:,~df.columns.duplicated()]\n", " return df\n", "\n", "\n", "\n", "#Function to get team-wise data accross all categories as mentioned above\n", "def get_team_data(top,end,text):\n", " df1 = frame_for_category_team('stats',top,end,stats3,text)\n", " df2 = frame_for_category_team('keepers',top,end,keepers3,text)\n", " df3 = frame_for_category_team('keepersadv',top,end,keepersadv2,text)\n", " df4 = frame_for_category_team('shooting',top,end,shooting3,text)\n", " df5 = frame_for_category_team('passing',top,end,passing2,text)\n", " df6 = frame_for_category_team('passing_types',top,end,passing_types2,text)\n", " df7 = frame_for_category_team('gca',top,end,gca2,text)\n", " df8 = frame_for_category_team('defense',top,end,defense2,text)\n", " df9 = frame_for_category_team('possession',top,end,possession2,text)\n", " df10 = frame_for_category_team('misc',top,end,misc2,text)\n", " df = pd.concat([df1, df2, df3, df4, df5, df6, df7, df8, df9, df10], axis=1)\n", " df = df.loc[:,~df.columns.duplicated()]\n", " return df" ] }, { "cell_type": "code", "execution_count": 3, "id": "9141a9ec", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | player | \n", "nationality | \n", "position | \n", "team | \n", "age | \n", "birth_year | \n", "games | \n", "games_starts | \n", "minutes | \n", "goals | \n", "... | \n", "fouls | \n", "fouled | \n", "offsides | \n", "pens_won | \n", "pens_conceded | \n", "own_goals | \n", "ball_recoveries | \n", "aerials_won | \n", "aerials_lost | \n", "aerials_won_pct | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "Francesco Acerbi | \n", "it ITA | \n", "DF | \n", "Inter | \n", "35-223 | \n", "1988 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "0.0 | \n", "... | \n", "2.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "4.0 | \n", "3.0 | \n", "0.0 | \n", "100.0 | \n", "
| 1 | \n", "Michel Aebischer | \n", "ch SUI | \n", "MF | \n", "Bologna | \n", "26-258 | \n", "1997 | \n", "4.0 | \n", "4.0 | \n", "347.0 | \n", "0.0 | \n", "... | \n", "7.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "23.0 | \n", "2.0 | \n", "3.0 | \n", "40.0 | \n", "
| 2 | \n", "Luis Alberto | \n", "es ESP | \n", "MF | \n", "Lazio | \n", "30-358 | \n", "1992 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "2.0 | \n", "... | \n", "3.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "24.0 | \n", "2.0 | \n", "4.0 | \n", "33.3 | \n", "
| 3 | \n", "Pontus Almqvist | \n", "se SWE | \n", "FW | \n", "Lecce | \n", "24-073 | \n", "1999 | \n", "4.0 | \n", "4.0 | \n", "347.0 | \n", "1.0 | \n", "... | \n", "3.0 | \n", "8.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "15.0 | \n", "0.0 | \n", "3.0 | \n", "0.0 | \n", "
| 4 | \n", "Lorenzo Amatucci | \n", "it ITA | \n", "MF | \n", "Fiorentina | \n", "19-228 | \n", "2004 | \n", "1.0 | \n", "0.0 | \n", "16.0 | \n", "0.0 | \n", "... | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 424 | \n", "Joshua Zirkzee | \n", "nl NED | \n", "FW | \n", "Bologna | \n", "22-122 | \n", "2001 | \n", "4.0 | \n", "4.0 | \n", "356.0 | \n", "1.0 | \n", "... | \n", "3.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "11.0 | \n", "9.0 | \n", "2.0 | \n", "81.8 | \n", "
| 425 | \n", "Zito | \n", "ao ANG | \n", "FW | \n", "Cagliari | \n", "21-196 | \n", "2002 | \n", "4.0 | \n", "3.0 | \n", "297.0 | \n", "1.0 | \n", "... | \n", "3.0 | \n", "8.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "6.0 | \n", "1.0 | \n", "5.0 | \n", "16.7 | \n", "
| 426 | \n", "Nadir Zortea | \n", "it ITA | \n", "DF | \n", "Atalanta | \n", "24-094 | \n", "1999 | \n", "3.0 | \n", "0.0 | \n", "96.0 | \n", "1.0 | \n", "... | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "4.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "
| 427 | \n", "Milan Đurić | \n", "ba BIH | \n", "FW,MF | \n", "Hellas Verona | \n", "33-122 | \n", "1990 | \n", "4.0 | \n", "1.0 | \n", "152.0 | \n", "0.0 | \n", "... | \n", "7.0 | \n", "1.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "4.0 | \n", "21.0 | \n", "14.0 | \n", "60.0 | \n", "
| 428 | \n", "Mateusz Łęgowski | \n", "pl POL | \n", "MF | \n", "Salernitana | \n", "20-235 | \n", "2003 | \n", "4.0 | \n", "2.0 | \n", "161.0 | \n", "0.0 | \n", "... | \n", "3.0 | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "14.0 | \n", "4.0 | \n", "5.0 | \n", "44.4 | \n", "
429 rows × 115 columns
\n", "| \n", " | player | \n", "nationality | \n", "position | \n", "team | \n", "age | \n", "birth_year | \n", "gk_games | \n", "gk_games_starts | \n", "gk_minutes | \n", "gk_goals_against | \n", "... | \n", "gk_passes_length_avg | \n", "gk_goal_kicks | \n", "gk_pct_goal_kicks_launched | \n", "gk_goal_kick_length_avg | \n", "gk_crosses | \n", "gk_crosses_stopped | \n", "gk_crosses_stopped_pct | \n", "gk_def_actions_outside_pen_area | \n", "gk_def_actions_outside_pen_area_per90 | \n", "gk_avg_distance_def_actions | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "Etrit Berisha | \n", "al ALB | \n", "GK | \n", "Empoli | \n", "34-195 | \n", "1989 | \n", "2.0 | \n", "2.0 | \n", "180.0 | \n", "9.0 | \n", "... | \n", "27.5 | \n", "9.0 | \n", "22.2 | \n", "27.0 | \n", "23.0 | \n", "1.0 | \n", "4.3 | \n", "2.0 | \n", "1.00 | \n", "15.7 | \n", "
| 1 | \n", "Elia Caprile | \n", "it ITA | \n", "GK | \n", "Empoli | \n", "22-027 | \n", "2001 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "1.0 | \n", "... | \n", "42.6 | \n", "4.0 | \n", "50.0 | \n", "50.3 | \n", "10.0 | \n", "2.0 | \n", "20.0 | \n", "2.0 | \n", "2.00 | \n", "12.4 | \n", "
| 2 | \n", "Marco Carnesecchi | \n", "it ITA | \n", "GK | \n", "Atalanta | \n", "23-082 | \n", "2000 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "3.0 | \n", "... | \n", "36.8 | \n", "6.0 | \n", "83.3 | \n", "69.2 | \n", "13.0 | \n", "1.0 | \n", "7.7 | \n", "0.0 | \n", "0.00 | \n", "14.5 | \n", "
| 3 | \n", "Michele Cerofolini | \n", "it ITA | \n", "GK | \n", "Frosinone | \n", "24-260 | \n", "1999 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "1.0 | \n", "... | \n", "38.3 | \n", "5.0 | \n", "60.0 | \n", "45.8 | \n", "18.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.00 | \n", "0.0 | \n", "
| 4 | \n", "Oliver Christensen | \n", "dk DEN | \n", "GK | \n", "Fiorentina | \n", "24-183 | \n", "1999 | \n", "2.0 | \n", "2.0 | \n", "180.0 | \n", "6.0 | \n", "... | \n", "33.2 | \n", "8.0 | \n", "62.5 | \n", "49.4 | \n", "15.0 | \n", "0.0 | \n", "0.0 | \n", "3.0 | \n", "1.50 | \n", "22.0 | \n", "
| 5 | \n", "Andrea Consigli | \n", "it ITA | \n", "GK | \n", "Sassuolo | \n", "36-237 | \n", "1987 | \n", "3.0 | \n", "3.0 | \n", "270.0 | \n", "5.0 | \n", "... | \n", "37.1 | \n", "34.0 | \n", "26.5 | \n", "28.1 | \n", "46.0 | \n", "2.0 | \n", "4.3 | \n", "3.0 | \n", "1.00 | \n", "14.5 | \n", "
| 6 | \n", "Alessio Cragno | \n", "it ITA | \n", "GK | \n", "Sassuolo | \n", "29-085 | \n", "1994 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "4.0 | \n", "... | \n", "37.1 | \n", "9.0 | \n", "33.3 | \n", "34.6 | \n", "9.0 | \n", "0.0 | \n", "0.0 | \n", "7.0 | \n", "7.00 | \n", "28.9 | \n", "
| 7 | \n", "Michele Di Gregorio | \n", "it ITA | \n", "GK | \n", "Monza | \n", "26-056 | \n", "1997 | \n", "3.0 | \n", "3.0 | \n", "270.0 | \n", "5.0 | \n", "... | \n", "28.7 | \n", "22.0 | \n", "40.9 | \n", "40.3 | \n", "45.0 | \n", "2.0 | \n", "4.4 | \n", "2.0 | \n", "0.67 | \n", "11.7 | \n", "
| 8 | \n", "Wladimiro Falcone | \n", "it ITA | \n", "GK | \n", "Lecce | \n", "28-162 | \n", "1995 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "31.0 | \n", "42.0 | \n", "52.4 | \n", "38.7 | \n", "54.0 | \n", "2.0 | \n", "3.7 | \n", "2.0 | \n", "0.50 | \n", "10.3 | \n", "
| 9 | \n", "Mike Maignan | \n", "fr FRA | \n", "GK | \n", "Milan | \n", "28-080 | \n", "1995 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "7.0 | \n", "... | \n", "29.2 | \n", "23.0 | \n", "60.9 | \n", "47.0 | \n", "52.0 | \n", "12.0 | \n", "23.1 | \n", "3.0 | \n", "0.75 | \n", "9.8 | \n", "
| 10 | \n", "Josep Martinez | \n", "es ESP | \n", "GK | \n", "Genoa | \n", "25-117 | \n", "1998 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "7.0 | \n", "... | \n", "39.7 | \n", "22.0 | \n", "95.5 | \n", "62.5 | \n", "75.0 | \n", "8.0 | \n", "10.7 | \n", "2.0 | \n", "0.50 | \n", "9.3 | \n", "
| 11 | \n", "Alex Meret | \n", "it ITA | \n", "GK | \n", "Napoli | \n", "26-183 | \n", "1997 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "5.0 | \n", "... | \n", "24.7 | \n", "11.0 | \n", "0.0 | \n", "20.4 | \n", "27.0 | \n", "1.0 | \n", "3.7 | \n", "7.0 | \n", "1.75 | \n", "18.2 | \n", "
| 12 | \n", "Vanja Milinković-Savić | \n", "rs SRB | \n", "GK | \n", "Torino | \n", "26-213 | \n", "1997 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "38.1 | \n", "36.0 | \n", "75.0 | \n", "61.3 | \n", "33.0 | \n", "3.0 | \n", "9.1 | \n", "5.0 | \n", "1.25 | \n", "15.8 | \n", "
| 13 | \n", "Lorenzo Montipò | \n", "it ITA | \n", "GK | \n", "Hellas Verona | \n", "27-213 | \n", "1996 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "42.9 | \n", "35.0 | \n", "88.6 | \n", "62.7 | \n", "54.0 | \n", "1.0 | \n", "1.9 | \n", "8.0 | \n", "2.00 | \n", "19.4 | \n", "
| 14 | \n", "Juan Musso | \n", "ar ARG | \n", "GK | \n", "Atalanta | \n", "29-138 | \n", "1994 | \n", "3.0 | \n", "3.0 | \n", "270.0 | \n", "2.0 | \n", "... | \n", "29.3 | \n", "18.0 | \n", "55.6 | \n", "46.1 | \n", "28.0 | \n", "2.0 | \n", "7.1 | \n", "8.0 | \n", "2.67 | \n", "22.0 | \n", "
| 15 | \n", "Guillermo Ochoa | \n", "mx MEX | \n", "GK | \n", "Salernitana | \n", "38-070 | \n", "1985 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "8.0 | \n", "... | \n", "35.9 | \n", "35.0 | \n", "54.3 | \n", "43.6 | \n", "63.0 | \n", "4.0 | \n", "6.3 | \n", "1.0 | \n", "0.25 | \n", "7.8 | \n", "
| 16 | \n", "Rui Patrício | \n", "pt POR | \n", "GK | \n", "Roma | \n", "35-218 | \n", "1988 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "6.0 | \n", "... | \n", "29.3 | \n", "17.0 | \n", "11.8 | \n", "22.1 | \n", "34.0 | \n", "2.0 | \n", "5.9 | \n", "2.0 | \n", "0.50 | \n", "12.2 | \n", "
| 17 | \n", "Mattia Perin | \n", "it ITA | \n", "GK | \n", "Juventus | \n", "30-315 | \n", "1992 | \n", "2.0 | \n", "2.0 | \n", "180.0 | \n", "1.0 | \n", "... | \n", "29.1 | \n", "11.0 | \n", "9.1 | \n", "18.9 | \n", "26.0 | \n", "2.0 | \n", "7.7 | \n", "2.0 | \n", "1.00 | \n", "15.0 | \n", "
| 18 | \n", "Samuele Perisan | \n", "it ITA | \n", "GK | \n", "Empoli | \n", "26-031 | \n", "1997 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "2.0 | \n", "... | \n", "26.3 | \n", "12.0 | \n", "16.7 | \n", "29.6 | \n", "18.0 | \n", "0.0 | \n", "0.0 | \n", "1.0 | \n", "1.00 | \n", "21.0 | \n", "
| 19 | \n", "Ivan Provedel | \n", "it ITA | \n", "GK | \n", "Lazio | \n", "29-188 | \n", "1994 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "7.0 | \n", "... | \n", "26.4 | \n", "15.0 | \n", "20.0 | \n", "27.9 | \n", "48.0 | \n", "2.0 | \n", "4.2 | \n", "6.0 | \n", "1.50 | \n", "15.7 | \n", "
| 20 | \n", "Boris Radunović | \n", "rs SRB | \n", "GK | \n", "Cagliari | \n", "27-118 | \n", "1996 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "37.8 | \n", "40.0 | \n", "65.0 | \n", "50.0 | \n", "62.0 | \n", "4.0 | \n", "6.5 | \n", "3.0 | \n", "0.75 | \n", "12.5 | \n", "
| 21 | \n", "Marco Silvestri | \n", "it ITA | \n", "GK | \n", "Udinese | \n", "32-203 | \n", "1991 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "29.7 | \n", "32.0 | \n", "31.3 | \n", "35.4 | \n", "49.0 | \n", "0.0 | \n", "0.0 | \n", "3.0 | \n", "0.75 | \n", "14.0 | \n", "
| 22 | \n", "Łukasz Skorupski | \n", "pl POL | \n", "GK | \n", "Bologna | \n", "32-139 | \n", "1991 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "4.0 | \n", "... | \n", "32.1 | \n", "22.0 | \n", "31.8 | \n", "34.2 | \n", "57.0 | \n", "2.0 | \n", "3.5 | \n", "2.0 | \n", "0.50 | \n", "11.5 | \n", "
| 23 | \n", "Yann Sommer | \n", "ch SUI | \n", "GK | \n", "Inter | \n", "34-278 | \n", "1988 | \n", "4.0 | \n", "4.0 | \n", "360.0 | \n", "1.0 | \n", "... | \n", "30.8 | \n", "29.0 | \n", "20.7 | \n", "28.3 | \n", "41.0 | \n", "2.0 | \n", "4.9 | \n", "0.0 | \n", "0.00 | \n", "6.5 | \n", "
| 24 | \n", "Alessandro Sorrentino | \n", "it ITA | \n", "GK | \n", "Monza | \n", "21-171 | \n", "2002 | \n", "1.0 | \n", "1.0 | \n", "90.0 | \n", "1.0 | \n", "... | \n", "21.0 | \n", "2.0 | \n", "0.0 | \n", "23.0 | \n", "8.0 | \n", "1.0 | \n", "12.5 | \n", "0.0 | \n", "0.00 | \n", "9.0 | \n", "
| 25 | \n", "Wojciech Szczęsny | \n", "pl POL | \n", "GK | \n", "Juventus | \n", "33-156 | \n", "1990 | \n", "2.0 | \n", "2.0 | \n", "180.0 | \n", "1.0 | \n", "... | \n", "33.1 | \n", "6.0 | \n", "66.7 | \n", "52.0 | \n", "33.0 | \n", "1.0 | \n", "3.0 | \n", "0.0 | \n", "0.00 | \n", "9.6 | \n", "
| 26 | \n", "Pietro Terracciano | \n", "it ITA | \n", "GK | \n", "Fiorentina | \n", "33-197 | \n", "1990 | \n", "2.0 | \n", "2.0 | \n", "180.0 | \n", "3.0 | \n", "... | \n", "33.1 | \n", "9.0 | \n", "11.1 | \n", "25.0 | \n", "16.0 | \n", "1.0 | \n", "6.3 | \n", "1.0 | \n", "0.50 | \n", "13.7 | \n", "
| 27 | \n", "Stefano Turati | \n", "it ITA | \n", "GK | \n", "Frosinone | \n", "22-016 | \n", "2001 | \n", "3.0 | \n", "3.0 | \n", "270.0 | \n", "5.0 | \n", "... | \n", "26.0 | \n", "13.0 | \n", "53.8 | \n", "41.7 | \n", "33.0 | \n", "2.0 | \n", "6.1 | \n", "3.0 | \n", "1.00 | \n", "16.3 | \n", "
28 rows × 47 columns
\n", "| \n", " | team | \n", "players_used | \n", "possession | \n", "games | \n", "games_starts | \n", "minutes | \n", "goals | \n", "assists | \n", "pens_made | \n", "pens_att | \n", "... | \n", "fouls | \n", "fouled | \n", "offsides | \n", "pens_won | \n", "pens_conceded | \n", "own_goals | \n", "ball_recoveries | \n", "aerials_won | \n", "aerials_lost | \n", "aerials_won_pct | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "Atalanta | \n", "23.0 | \n", "49.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "8.0 | \n", "8.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "48.0 | \n", "34.0 | \n", "9.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "232.0 | \n", "60.0 | \n", "65.0 | \n", "48.0 | \n", "
| 1 | \n", "Bologna | \n", "22.0 | \n", "56.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "3.0 | \n", "2.0 | \n", "0.0 | \n", "1.0 | \n", "... | \n", "42.0 | \n", "41.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "205.0 | \n", "46.0 | \n", "34.0 | \n", "57.5 | \n", "
| 2 | \n", "Cagliari | \n", "21.0 | \n", "37.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "46.0 | \n", "35.0 | \n", "7.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "241.0 | \n", "51.0 | \n", "60.0 | \n", "45.9 | \n", "
| 3 | \n", "Empoli | \n", "27.0 | \n", "47.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "43.0 | \n", "59.0 | \n", "7.0 | \n", "0.0 | \n", "2.0 | \n", "1.0 | \n", "176.0 | \n", "39.0 | \n", "54.0 | \n", "41.9 | \n", "
| 4 | \n", "Fiorentina | \n", "22.0 | \n", "61.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "9.0 | \n", "7.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "49.0 | \n", "52.0 | \n", "4.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "196.0 | \n", "53.0 | \n", "56.0 | \n", "48.6 | \n", "
| 5 | \n", "Frosinone | \n", "23.0 | \n", "48.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "7.0 | \n", "4.0 | \n", "2.0 | \n", "2.0 | \n", "... | \n", "43.0 | \n", "49.0 | \n", "11.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "202.0 | \n", "52.0 | \n", "53.0 | \n", "49.5 | \n", "
| 6 | \n", "Genoa | \n", "19.0 | \n", "33.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "51.0 | \n", "35.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "177.0 | \n", "60.0 | \n", "46.0 | \n", "56.6 | \n", "
| 7 | \n", "Hellas Verona | \n", "21.0 | \n", "43.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "66.0 | \n", "46.0 | \n", "12.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "207.0 | \n", "82.0 | \n", "71.0 | \n", "53.6 | \n", "
| 8 | \n", "Inter | \n", "19.0 | \n", "48.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "13.0 | \n", "11.0 | \n", "2.0 | \n", "2.0 | \n", "... | \n", "47.0 | \n", "45.0 | \n", "5.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "187.0 | \n", "44.0 | \n", "30.0 | \n", "59.5 | \n", "
| 9 | \n", "Juventus | \n", "21.0 | \n", "48.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "9.0 | \n", "7.0 | \n", "1.0 | \n", "2.0 | \n", "... | \n", "51.0 | \n", "48.0 | \n", "10.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "181.0 | \n", "38.0 | \n", "26.0 | \n", "59.4 | \n", "
| 10 | \n", "Lazio | \n", "20.0 | \n", "56.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "47.0 | \n", "46.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "188.0 | \n", "30.0 | \n", "51.0 | \n", "37.0 | \n", "
| 11 | \n", "Lecce | \n", "19.0 | \n", "43.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "7.0 | \n", "5.0 | \n", "2.0 | \n", "2.0 | \n", "... | \n", "55.0 | \n", "62.0 | \n", "3.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "191.0 | \n", "54.0 | \n", "43.0 | \n", "55.7 | \n", "
| 12 | \n", "Milan | \n", "19.0 | \n", "55.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "9.0 | \n", "6.0 | \n", "3.0 | \n", "3.0 | \n", "... | \n", "45.0 | \n", "53.0 | \n", "6.0 | \n", "2.0 | \n", "1.0 | \n", "0.0 | \n", "169.0 | \n", "33.0 | \n", "42.0 | \n", "44.0 | \n", "
| 13 | \n", "Monza | \n", "22.0 | \n", "56.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "3.0 | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "53.0 | \n", "35.0 | \n", "5.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "175.0 | \n", "37.0 | \n", "45.0 | \n", "45.1 | \n", "
| 14 | \n", "Napoli | \n", "19.0 | \n", "61.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "8.0 | \n", "5.0 | \n", "1.0 | \n", "2.0 | \n", "... | \n", "42.0 | \n", "39.0 | \n", "14.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "208.0 | \n", "47.0 | \n", "35.0 | \n", "57.3 | \n", "
| 15 | \n", "Roma | \n", "23.0 | \n", "57.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "10.0 | \n", "8.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "53.0 | \n", "45.0 | \n", "7.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "196.0 | \n", "76.0 | \n", "54.0 | \n", "58.5 | \n", "
| 16 | \n", "Salernitana | \n", "21.0 | \n", "51.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "3.0 | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "48.0 | \n", "62.0 | \n", "5.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "183.0 | \n", "54.0 | \n", "86.0 | \n", "38.6 | \n", "
| 17 | \n", "Sassuolo | \n", "24.0 | \n", "43.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "5.0 | \n", "4.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "36.0 | \n", "41.0 | \n", "3.0 | \n", "1.0 | \n", "3.0 | \n", "0.0 | \n", "171.0 | \n", "37.0 | \n", "50.0 | \n", "42.5 | \n", "
| 18 | \n", "Torino | \n", "22.0 | \n", "51.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "5.0 | \n", "3.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "53.0 | \n", "43.0 | \n", "10.0 | \n", "0.0 | \n", "2.0 | \n", "0.0 | \n", "193.0 | \n", "59.0 | \n", "63.0 | \n", "48.4 | \n", "
| 19 | \n", "Udinese | \n", "22.0 | \n", "48.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "56.0 | \n", "42.0 | \n", "5.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "203.0 | \n", "64.0 | \n", "52.0 | \n", "55.2 | \n", "
20 rows × 152 columns
\n", "| \n", " | team | \n", "players_used | \n", "possession | \n", "games | \n", "games_starts | \n", "minutes | \n", "goals | \n", "assists | \n", "pens_made | \n", "pens_att | \n", "... | \n", "fouls | \n", "fouled | \n", "offsides | \n", "pens_won | \n", "pens_conceded | \n", "own_goals | \n", "ball_recoveries | \n", "aerials_won | \n", "aerials_lost | \n", "aerials_won_pct | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "vs Atalanta | \n", "23.0 | \n", "50.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "5.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "36.0 | \n", "47.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "212.0 | \n", "65.0 | \n", "60.0 | \n", "52.0 | \n", "
| 1 | \n", "vs Bologna | \n", "22.0 | \n", "43.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "50.0 | \n", "40.0 | \n", "12.0 | \n", "0.0 | \n", "1.0 | \n", "0.0 | \n", "207.0 | \n", "34.0 | \n", "46.0 | \n", "42.5 | \n", "
| 2 | \n", "vs Cagliari | \n", "21.0 | \n", "62.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "3.0 | \n", "0.0 | \n", "1.0 | \n", "... | \n", "38.0 | \n", "41.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "220.0 | \n", "60.0 | \n", "51.0 | \n", "54.1 | \n", "
| 3 | \n", "vs Empoli | \n", "27.0 | \n", "52.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "11.0 | \n", "8.0 | \n", "1.0 | \n", "2.0 | \n", "... | \n", "60.0 | \n", "42.0 | \n", "8.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "203.0 | \n", "54.0 | \n", "39.0 | \n", "58.1 | \n", "
| 4 | \n", "vs Fiorentina | \n", "22.0 | \n", "39.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "9.0 | \n", "8.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "56.0 | \n", "43.0 | \n", "5.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "202.0 | \n", "56.0 | \n", "53.0 | \n", "51.4 | \n", "
| 5 | \n", "vs Frosinone | \n", "23.0 | \n", "51.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "6.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "50.0 | \n", "39.0 | \n", "6.0 | \n", "0.0 | \n", "2.0 | \n", "0.0 | \n", "212.0 | \n", "53.0 | \n", "52.0 | \n", "50.5 | \n", "
| 6 | \n", "vs Genoa | \n", "19.0 | \n", "66.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "7.0 | \n", "6.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "43.0 | \n", "43.0 | \n", "9.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "200.0 | \n", "46.0 | \n", "60.0 | \n", "43.4 | \n", "
| 7 | \n", "vs Hellas Verona | \n", "21.0 | \n", "56.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "2.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "47.0 | \n", "63.0 | \n", "7.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "190.0 | \n", "71.0 | \n", "82.0 | \n", "46.4 | \n", "
| 8 | \n", "vs Inter | \n", "19.0 | \n", "51.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "1.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "47.0 | \n", "44.0 | \n", "5.0 | \n", "0.0 | \n", "2.0 | \n", "0.0 | \n", "163.0 | \n", "30.0 | \n", "44.0 | \n", "40.5 | \n", "
| 9 | \n", "vs Juventus | \n", "21.0 | \n", "51.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "2.0 | \n", "2.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "52.0 | \n", "49.0 | \n", "5.0 | \n", "0.0 | \n", "2.0 | \n", "0.0 | \n", "173.0 | \n", "26.0 | \n", "38.0 | \n", "40.6 | \n", "
| 10 | \n", "vs Lazio | \n", "20.0 | \n", "44.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "7.0 | \n", "5.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "49.0 | \n", "44.0 | \n", "7.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "196.0 | \n", "51.0 | \n", "30.0 | \n", "63.0 | \n", "
| 11 | \n", "vs Lecce | \n", "19.0 | \n", "56.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "... | \n", "64.0 | \n", "53.0 | \n", "5.0 | \n", "0.0 | \n", "2.0 | \n", "0.0 | \n", "203.0 | \n", "43.0 | \n", "54.0 | \n", "44.3 | \n", "
| 12 | \n", "vs Milan | \n", "19.0 | \n", "44.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "7.0 | \n", "6.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "56.0 | \n", "43.0 | \n", "7.0 | \n", "1.0 | \n", "3.0 | \n", "0.0 | \n", "176.0 | \n", "42.0 | \n", "33.0 | \n", "56.0 | \n", "
| 13 | \n", "vs Monza | \n", "22.0 | \n", "43.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "6.0 | \n", "5.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "37.0 | \n", "52.0 | \n", "6.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "187.0 | \n", "45.0 | \n", "37.0 | \n", "54.9 | \n", "
| 14 | \n", "vs Napoli | \n", "19.0 | \n", "38.3 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "5.0 | \n", "4.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "47.0 | \n", "39.0 | \n", "7.0 | \n", "1.0 | \n", "2.0 | \n", "0.0 | \n", "173.0 | \n", "35.0 | \n", "47.0 | \n", "42.7 | \n", "
| 15 | \n", "vs Roma | \n", "23.0 | \n", "43.0 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "6.0 | \n", "4.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "46.0 | \n", "51.0 | \n", "4.0 | \n", "1.0 | \n", "1.0 | \n", "1.0 | \n", "159.0 | \n", "54.0 | \n", "76.0 | \n", "41.5 | \n", "
| 16 | \n", "vs Salernitana | \n", "21.0 | \n", "48.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "8.0 | \n", "5.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "64.0 | \n", "46.0 | \n", "4.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "203.0 | \n", "86.0 | \n", "54.0 | \n", "61.4 | \n", "
| 17 | \n", "vs Sassuolo | \n", "24.0 | \n", "56.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "9.0 | \n", "6.0 | \n", "2.0 | \n", "3.0 | \n", "... | \n", "45.0 | \n", "34.0 | \n", "15.0 | \n", "2.0 | \n", "1.0 | \n", "0.0 | \n", "207.0 | \n", "50.0 | \n", "37.0 | \n", "57.5 | \n", "
| 18 | \n", "vs Torino | \n", "22.0 | \n", "48.8 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "2.0 | \n", "2.0 | \n", "2.0 | \n", "... | \n", "44.0 | \n", "48.0 | \n", "7.0 | \n", "1.0 | \n", "0.0 | \n", "0.0 | \n", "207.0 | \n", "63.0 | \n", "59.0 | \n", "51.6 | \n", "
| 19 | \n", "vs Udinese | \n", "22.0 | \n", "51.5 | \n", "4.0 | \n", "44.0 | \n", "360.0 | \n", "4.0 | \n", "3.0 | \n", "1.0 | \n", "1.0 | \n", "... | \n", "43.0 | \n", "51.0 | \n", "10.0 | \n", "0.0 | \n", "0.0 | \n", "0.0 | \n", "188.0 | \n", "52.0 | \n", "64.0 | \n", "44.8 | \n", "
20 rows × 152 columns
\n", "