Analisi Milan 2020-2021

Parte I

Il 2020 per il Milan è stato uno degli anni migliori della sua storia recente, segnando una rapida inversione di tendenza su diversi livelli. Sul piano manageriale è stata finalmente raggiunta la solidità che era mancata nell’ultimo decennio, costellato da continui cambi a livello di proprietà e dirigenza.  In campo la squadra, guidata da Stefano Pioli, è invece rinata nel periodo post lockdown. Una lunga serie di convincenti prestazioni le hanno permesso di recuperare terreno in classifica nella scorsa stagione, qualificandosi all’Europa League, mentre, nell’attuale, si è invece consolidata come una delle forze del campionato, contrariamente a quasi tutte le previsioni iniziali.

Dopo un anno molto convincente i primi mesi del 2021 sono sembrati un ritorno al passato: la prima sconfitta in campionato contro la Juventus, l’eliminazione dalla Coppa Italia nel derby, il doppio pareggio contro la Stella Rossa in Europa League, la perdita del primo posto in Serie A a favore dell’Inter e un’altra serie di prestazioni negative o mediocri sono concentrate tutte in questi primi mesi dell’anno, provocando complessivamente un brusco rallentamento nella corsa del Milan di Pioli verso i propri obiettivi.  Dalla fine di febbraio la squadra sembrava aver ritrovato fiducia e la propria identità, fornendo diverse buone prestazioni sia sul piano del gioco espresso (per esempio contro il Manchester United in trasferta), sia in termini di risultati (le vittorie esterne a Roma e Verona), interrompendo momentaneamente il trend negativo. Le recenti sconfitte casalinghe contro Napoli  Manchester United hanno però riacceso i riflettori sul momento dei rossoneri.

Diverse motivazioni sono state proposte per interpretare questo periodo negativo: l’elevato numero di infortuni; la mancanza di aggiustamenti tattici da parte dello staff di Pioli; una ridotta capacità atletica, causata da una presunta mini preparazione eseguita in un periodo meno fitto di impegni o, più semplicemente, una normalizzazione dei valori della squadra (quasi nessuno prima della stagione prevedeva il Milan ai vertici della classifica). Sicuramente la ragione sarà una sintesi di questi fattori, senza che uno predomini sugli altri, e, d’altra parte, questo momento può anche essere considerato come fisiologico nel percorso annuale di una squadra, sarebbe infatti impensabile aspettarsi un andamento lineare senza passaggi a vuoto, soprattutto se pensiamo che questo è il gruppo più giovane del campionato, con un’età media di 24.1 anni (transfermarkt.com).

L’obiettivo della nostra analisi è quello di analizzare l’andamento dei parametri atletici nella stagione 2020/2021. In particolare vogliamo verificare se è riscontrabile una flessione nei valori atletici del 2021 rispetto a quelli del 2021 (PARTE I) e studiare le correlazioni fra prestazioni atletiche e risultati (PARTE II), testando la presenza di un’eventuale dipendenza statistica. 

Dati

Prestazioni atletiche

I dati atletici che utilizzeremo nell’analisi sono stati ricavati dai match report pubblicati dalla Lega Serie A sul proprio sito al termine di ogni partita (vedi per esempio i report della Giornata 1). I dati sono stati in seguito trattati con Python 3.8 (il codice per estrarre i dati verrà presto rilasciato). Oltre alle statistiche classiche relative alla partita (gol segnati e subiti, tempo di gioco e tempo effettivo ecc.),  dai match report è possibile ricavare per ogni squadra (considereremo solo dati per squadra e non per i singoli giocatori) i seguenti parametri atletici:  

  • Jog = chilometri (km) percorsi km con velocità nel range 0 – 7.92 km/h. Fascia a bassa intensità.
  • Run = km percorsi con velocità nel range 7.92 – 15.84 km/h. Media intensità.
  • Sprint = km percorsi con velocità > 15.84 km/h. Alta intensità.
  • Velocità media (km/h) E’ importante notare come sia la velocità media per giocatore durante tutto l’arco della partita, compresi i momenti in cui il gioco è fermo. Si avrà infatti un range di valori compreso tra 5 km/h e 7.5 km/h, inferiore dunque alla soglia di run anche se la maggior parte di km vengono percorsi in media intensità.
Oltre alla velocità media, vogliamo introdurre un altra grandezza in grado di descrivere l’intensità di una squadra. A questo fine considereremo la media per giocatore dei km in Run + Sprint normalizzata per il tempo effettivo giocato, ossia solo quando la palla è in gioco, escludendo dunque i tempi fermi. Formalmente: 
  • Velocità media efficace (km/h) = (Run + Sprint) / (11 * tempo effettivo), dove la divisione per 11 media sul numero dei giocatori e il tempo effettivo è espresso in ore.  
 Per ogni squadra sarà poi facile ricavare la distanza totale ( = jog + run + sprint), la distanza a media-alta intensità (= run + sprint). Inoltre presa una squadra possiamo ricavare anche i parametri atletici in relazione all’intervallo all’avversario, in particolare considereremo:
  • Differenza distanza = distanza totale squadra – distanza totale avversario
  • Differenza distanza media alta intensità =media-alta intensità squadra -media-alta intensità avversaria.
  • Differenza Sprint = sprint squadra –  sprint avversario.
  • Differenza velocità media = velocità media squadra – velocità media avversario.
  • Differenza velocità efficace: velocità efficace squadra – velocità efficace avversario. 
 

La nostra idea è quindi di considerare anche le statistiche relative a quelle dell’avversario. E’ infatti presumibile che i km percorsi da una squadra, e la loro velocità, possano essere influenzati da quanto e come corre l’avversario e dal suo stile di gioco.

Expected goals

Per valutare la prestazione di una squadra, oltre a tenere ovviamente conto del risultato, del numero di gol fatti e subiti, considereremo anche gli expected goals (xG) e i non-penality expected goals (npxG). Queste due grandezze sono delle metriche che permettono di valutare la produzione offensiva di una squadra.

L’idea alla base è la seguente: ogni volta che una squadra compie un tiro è possibile calcolare la probabilità di fare gol con tale tiro. A ogni tiro verrà quindi associato un valore xG pari a tale probabilità. Supponiamo per esempio che a un tiro associamo  0.5 xG, ciò significa che ripetendo la conclusione 10 volte nelle medesime condizioni segneremo in media 5 volte su 10. Il valore xG di una squadra a fine partita sarà dunque la somma degli xG dei singoli tiri fatti dalla squadra in questione durante tutto il match e fornisce un’idea dei gol che ci aspetteremmo di fare con i tiri eseguiti. Facciamo un semplice esempio: supponiamo che il Milan durante una partita esegua 2 tiri, il primo con 0.5 xG e il secondo con un valore di 0.2 xG. Associamo quindi una probabilità di realizzazione del 50% al primo tiro e del 20% al secondo. Complessivamente avremo 0.7 xG, cioè una probabilità del 70% di fare almeno un gol. Chiaramente i gol fatti con due tiri possono essere 0,1 oppure 2, indipendentemente dal valore xG, che ci fornisce però un’indicazione complessiva della qualità e della mole delle occasioni prodotte.  La differenza tra xG e npxG è che i secondi sono al netto dei rigori, dove la probabilità di segnare su rigore è stimata al 76%, quindi 0.76 xG.

Per valutare in egual modo la prestazione difensiva di un team è possibile considerare gli expected goals against (xGA) e i non-penality expected goals against (npxGA), che sono rispettivamente gli xG e i npxG della squadra avversaria, che quindi valutano la qualità e la quantità delle occasioni concesse da un team, nel caso dei npxGA al netto dei rigori. La differenza tra xG e xGA darà infine un’indicazione su quale squadra ha avuto una migliore produzione offensiva.

La probabilità associata a ogni conclusione viene calcolata tramite modelli matematici che considerano tiri avvenuti in situazioni analoghe e osservando quanti di quei tiri sono andati a segno. Il modello da cui prendiamo i dati è stato sviluppato da StatsBomb. I valori dei singoli match relativi al Milan 2020-2021 possono essere trovati su  FBref.com. Riassumendo considereremo per ogni squadra i seguenti valori:

  • xG = expected goals prodotti durante la partita. 
  • xGA = expected goals prodotti dalla squadra avversaria
  • Net xG = xG – xGA. 
  • npxG = expected goals prodotti al netto dei rigori.
  • npxGA: xGA al netto dei rigori. 
  • Net npxG = npxG – npxGA. 
 
 

Milan 2020

Media punti: 2.43

Media gol segnati: 2.29

Media gol subiti: 1.14

Media xG: 2.23

Media xGA: 1.16

Media Net xG: 1.0

Media npxG: 1.72

Media npxGA: 1.00

Media Net npxG: 0.72

Milan 2021

Media punti: 1.69  (– 30%)

Media gol segnati: 1.38 (– 40%)

Media gol subiti: 1.15

Media xG: 1.55 (– 30%)

Media xGA: 1.35 (+16%)

Media Net xG: 0.20 (-80%)

Media npxG: 1.16 (-32%)

Media npxGA: 1.24 (+24%)

Media Net npxG: -0.06 (-108%)

I dati mostrano un evidente peggioramento in praticamente ogni statistica, sia classiche che avanzate. In particolare si può vedere come la produzione offensiva si sia drasticamente ridotta, mentre a livello difensivo il peggioramento risulta meno marcato. Complessivamente si può vedere come il Milan produce meno e subisce in media di più.

Per evidenziare questa tendenza proponiamo una serie di boxplot delle quantità in esame, in modo da visualizzarne la distribuzione, dove abbiamo separato i valori del 2020 e quelli del 2021. Da questi si potrà vedere come il calo è avvenuto principalmente a livello offensivo, mentre in fase difensiva i valori sono peggiori ma tutto sommato paragonabili. 

Un boxplot è un un metodo grafico utilizzato per rappresentare una distribuzione di valori, in cui vengono evidenziate in particolare il valore mediano, rappresentato dalla linea centrale nel box, e la variabilità dei valori, tramite la lunghezza del box e dei baffi. Nelle prossime settimane una sezione del sito verrà dedicata alla spiegazione dei metodi statistici utilizzati.  Per chi fosse interessato ad approfondire: boxplot.

Boxplot expected goals

Boxplot non-penality expected goals

Rendimento atletico: Milan vs Serie A

Analizziamo ora come si posiziona il Milan rispetto alle altre squadre dal punto di vista atletico. Presenteremo una serie di classifiche per diversi parametri atletici in cui l’ordinamento viene dato secondo la media. Per ogni squadra visualizziamo inoltre la distribuzione dei valori tramite boxplot, che ci permette cosi di avere indicazione anche della variabilità dei valori, oltre a mostrare anche il valore mediano (la linea centrale del box). Ad esempio, guardando il grafico relativo alla distanza percorsa per squadra, possiamo notare come il Benevento abbia una ridotto range di valori (corre sempre un numero di km simile) viceversa l’Atalanta tende a percorrere un numero molto diverso di km di partita in partita. 

Vogliamo ricordare nuovamente un punto: la nostra idea è che debbano essere considerati anche i dati relativi all’avversario in quanto è presumibile pensare che tra i km percorsi da due squadre che si affrontano vi sia una certa correlazione, che ci proponiamo di analizzare in studi successivi, (già qui si può osservare come la mediana per molte squadre si vicina al valore 0). In particolare riteniamo che questo può far emergere alcune caratteristiche delle squadre. Si guardi ad esempio all’Atalanta che è all’6° posto per km percorsi ma al 18° per km relativi all’avversario. Quindi percorre molti km ma tendenzialmente meno degli avversari, che quindi per fronteggiarla, probabilmente per lo stile di gioco, devono correre più del solito. Ulteriori studi su queste idee verranno sviluppati in seguito. 

Le prime due grandezze che consideriamo sono la distanza percorsa e la distanza percorsa rispetto all’avversario. Ricordiamo che nella distanza percorsa sono presenti i km relativi a tutte e tre le fasce di intensità (jog, run e sprint), risulta quindi una grandezza abbastanza grezza per valutare il rendimento atletico ma fornisce un’indicazione di base da cui partire. Il Milan risulta 13° per distanza percorsa, mentre 10° per per km percorsi rispetto all’avversario. E’ interessante notare come il Milan sia l’unica squadra tra le prime 7 (le posizioni meritevoli di una qualificazione UEFA) a non essere nelle prime 10 per km percorsi. Guardando invece alla distanza percorsa relativa all’avversario si può notare come rientri nelle prime 10 posizioni, con un valore medio leggermente negativo, segno che tendenzialmente corre poco meno dell’avversario. 

Escludendo dal conto i km percorsi in Jog (bassa intensità) possiamo considerare la distanza a media-alta intensità per squadra e relativa all’avversario. In queste due classifiche il Milan risulta rispettivamente al 18° e al 12° posto. Togliendo i km a bassa intensità, si riscontra dunque un peggioramento. E’ importante osservare dal boxplot che la mediana di Run + Sprint è in realtà più alta, segno che quindi la media è stata influenzata da alcune partite in cui i valori sono stati particolarmente bassi. Rispetto alla capolista della Serie A (Inter) lo scarto medio è di circa 6 km a media-alta intensità. Infine il dato relativo all’avversario è in media leggermente negativo. 

Considerando invece i km percorsi ad alta intensità notiamo uno scenario differente. Il Milan è 3° per km percorsi in sprint e 7° in km in sprint rispetto all’avversario. In questo caso la mediana per il Milan è inferiore alla media. E’ possibile notare come in questo caso tutte le squadre attualmente ai primi 7 posti della classifica si trovino nelle prime 10 posizioni per km in sprint, mentre la situazione è più variegata se consideriamo i km in sprint rispetto all’avversario. 

In ultima analisi consideriamo la velocità media e la velocità media efficace. Ricordiamo che quest’ultima è definita come la media per giocatore dei km percorsi in run + sprint diviso il tempo effettivo giocato espresso in ore. Questa metrica serve a valutare l’intensità di una squadra quando la palla è in gioco. Con questa definizione vengono esclusi i km a bassa intensità, che vengono considerati dalla velocità media classica.  Dai grafici si può notare come il Milan risulti 17° per velocità media e 10° per velocità efficace. 

Sintesi classifiche

Distanza percorsa: 13°

Distanza in Jog: 3°

Distanza in Run: 18°

Distanza in Sprint: 3°

Distanza in Run+Sprint: 18°

Velocità media: 17°

Velocità efficace: 10°

Differenza distanza percorsa: 10°

Differenza in Jog: 4°

Differenza in Run: 13°

Differenza in Sprint: 7°

Differenza in Run+Sprint: 12°

Differenza velocità media: 12°

Differenza velocità efficace: 11°

Il quadro presentato mostra come il Milan non sia tra le migliori squadre del campionato nei i parametri considerati, sebbene l’essere tra i primi per numero di km in Sprint è sicuramente un fattore molto positivo, soprattutto perché risulta una caratteristica comune a tutte le prime squadre del campionato. 

Per ciò che riguarda lo stile di gioco l’abbinamento tra alti valori in Jog e Sprint e bassi in Run fa pensare a partite che alternano periodi di ritmo compassato ad altri di elevata intensità. 

Andamento per giornata

Illustriamo ora l’andamento giornata per giornata con una serie di grafici volti a individuare eventuali trend durante la stagione. L’obiettivo è quindi di capire a livello qualitativo se è riscontrabile un calo durante il nuovo anno. Nei grafici il risultato della partita è specificato tramite i punti conquistati. Sottolineiamo inoltre che le partite del nuovo anno iniziano dalla giornata numero 15, ossia dal match Benevento-Milan. 

Dal grafico riguardante la distanza percorsa è possibile innanzitutto osservare come non sembra esserci correlazione tra punteggio e km fatti, si può notare però un elevato numero di partite sotto la media nel nuovo anno. Nel 2020 9 partite su 14 (64%) è sopra la media , mentre nel 2021 solo 3 su 13 (23%) ha un dato superiore. Si può inoltre osservare come le ultime 3 partite la situazione si sia invertita, segnalando una decisa inversione di tendenza. Guardando la distanza percorsa verrebbe naturale isolare il periodo gennaio-febbraio come anomalo (da Benevento-Milan a Roma-Milan), dove solo 1 partita su 10 è stata sopra media. 

Un simile trend sotto media si è osservato anche a inizio stagione, dove è presumibile che la squadra abbia svolto un lavoro fisico più intenso per prepararsi alla stagione in corso (causa covid quest’anno la preparazione non è stata fatta come di consueto durante la stagione).

Il grafico in cui sono presenti i dati relativi all’avversario conferma le prime impressioni. Nel 2020 le partite in cui il Milan ha complessivamente corso più dell’avversario sono 9 su 14 (63%), mentre nel 2021 5 su 13 (38%). 

Guardando la distanza percorsa a media-alta intensità si può trovare un trend comparabile (infatti abbiamo solo tolo i km a bassa intensità) a quello mostrato in precedenza, con una più rapida ripresa dopo Milan-Inter alla giornata 23. Nel 2020 9 partite su 14 risultano sopra media (63%), mentre 7 su 13 (53%) nel 2021, un calo abbastanza lieve. Si nota anche in questo caso un rapido aumento nelle ultime 3 partite, che mostra come i mesi peggiori siano stati gennaio-febbraio.

Relativamente all’avversario, le partite in cui il Milan ha fatto un numero maggiore di km a media-alta intensità sono ancora 8 su 14 (57%) nel 2020, mentre 4 su 13 (31%) nel 2021. Nel nuovo anno il Milan ha perciò percorso spesso meno km a media-alta intensità rispetto all’avversario. La partita che salta all’occhio è Milan-Inter 0-3 dove l’Inter ha percorso quasi 8 km in più del Milan in questa fascia d’intensità. 

Per quanto riguarda i km percorsi in sprint non si osserva differenza a livello qualitativo tra il 2020 e il 2021.  Anche nel dato relativo all’avversario risulta complesso ritrovare qualche pattern. Nell’ultimo periodo si segnala una crescita dei km in sprint rispetto all’avversario. 

Per analizzare in modo completo l’andamento della velocità media riteniamo sia necessario osservare sia il valore assoluto che quello relativo. Si può infatti notare che nella prima parte di stagione il Milan abbia variato poco la sua velocità media di partita in partita ma allo stesso tempo è andato generalmente più veloce degli avversari, o al limite alla stessa velocità media. Nel secondo periodo, coincidente con il 2021, la velocità media non può dirsi diminuita ma presenta una variabilità maggiore e tendenzialmente si può notare come la velocità degli avversari risulti maggiore.

Osservando il secondo grafico è evidente che quando il Milan riesce ad andare più veloce degli avversari ottiene risultati migliori e viceversa quando è più lento. Nella Parte II di questo studio ci focalizzeremo su questi aspetti. 

2020 vs 2021 in numeri

Dall’andamento per giornata sembra emergere un calo nel rendimento fisico nel 2021 che sembra accentuato in particolare nel periodo di gennaio-febbraio.  La flessione sembra inoltre più importante nelle statistiche relative all’avversario. Andiamo innanzitutto  a vedere numericamente come è variata la media dei vari parametri atletici. Considerato che la media ci fornisce solo una prima indicazione, presentiamo inoltre una serie di boxplot che ci permettono di avere un’idea più completa della distribuzione dei valori

    
Distanza (km)108.978107.184105.431
Differenza Distanza (km)0.789-1.189-1.514
Run + Sprint (km)79.83680.14078.522
Differenza Run + Sprint (km)-0.215-1.278-1.685
Sprint (km)9.7049.8089.727
Differenza sprint(km)0.1660.3780.186
Velocità media (km/h)6.556.656.60
Differenza velocità (km/h)0.04-0.05-0.04
Velocità efficace (km/h)8.558.588.48
Differenza velocità efficace-0.04-0.14-0.18

Distanza (km)

Differenza distanza(km)

Run + Sprint (km)

Differenza Run + Sprint (km)

Sprint (km)

Differenza Sprint (km)

Velocità media (km/h)

Differenza Velocità (km/h)

Velocità media efficace (km/h)

Differenza velocità efficace

2020

108.978

0.798

79.836

-0.215

9.704

0.166

6.55

0.04

8.55

-0.04

2021

107.184

-1.189

80.14

-1,278

9.808

0.378

6.65

-0.05

8.58

-0.14

Gen-Feb

105.431

-1.524

78.52

-1,685

9.727

0.186

6.60

-0.04

8.48

-0.18

Dall’analisi dei valori medi e soprattutto dall’osservazione dei boxplot si può intravedere che in diverse categorie c’è stato un peggioramento, più pronunciato tra i mesi di gennaio e febbraio. 

Per ciò che riguarda la distanza percorsa, sia assoluta che relativa, i boxplot dimostrano una evidente flessione, estremamente evidente nel periodo gen-feb. 

La stessa cosa si rivela per i km a media e alta intensità. La distribuzione Run+Sprint ’20 e quella Run+Sprint ’21 è comunque paragonabile, anche se la mediana è inferiore, mentre in gen-feb i dati sono peggiori. Per il dato relativo all’avversario si osserva un calo.

In riferimento ai km in sprint si nota come i boxplot siano simili in tutti e 3 i periodi. Il dato medio, superiore nel nuovo anno, è influenzato da due outlier ma le distribuzioni sono paragonabili. Relativamente all’avversario i dati sono invece migliori nel nuovo anno, mentre le distribuzioni ’20 e Gen-Feb sono simili, sebbene vi sia una minor variabilità nel secondo periodo. 

La velocità media risulta invece tendenzialmente più alta nel nuovo anno, mentre i boxplot ’20 e Gen-Feb sono compatibili, con una maggior variabilità nel secondo periodo. Per ciò che riguarda invece la velocità media rispetto all’avversario si nota una profonda differenza tra le distribuzioni sia nel confronto 2020 vs 2021 sia in quello 2020 vs Gen-Feb. 

Conclusioni simili possono essere dedotte anche per quanto riguarda la velocità efficace rispetto all’avversario, mentre invece nel valore assoluto vi è compatibilità. 

Conclusioni Parte I

I dati che abbiamo presentato mostrano che vi è stata una flessione nei parametri atletici nel 2021 e in particolare nei primi due mesi dell’anno. Gli unici parametri che sono rimasti costanti sono i km percorsi ad alta intensità (sia assoluti che relativi all’avversario), la velocità media e quella efficace in termini assoluti. Quest’ultime risultano però decisamente diminuite se confrontiamo il dato con quello degli avversari, passando da una media positiva a una negativa. 

E’ importante però sottolineare il fatto che velocità media e km ad alta intensità sono compatibili con i valori precedenti, ma in negativo rispetto all’avversario.  Questo potrebbe essere indicazione che il calo nei parametri fisici possa essere dovuto non tanto a un calo di forma quanto a un modificato stile di gioco sia proprio che degli avversari, come se al posto di imporre il proprio ritmo sia in balia di quello della squadra avversario. Visto che oltre ai parametri fisici è calato anche il rendimento potrebbe essere utile proseguire l’indagine e capire da dove derivi questa flessione nei parametri atletici. 

Nella Parte II l’analisi proseguirà studiando la correlazione tra i parametri atletici considerati e risultati e produzione offensiva.

Alberto Riccardi

Per commenti, suggerimenti o critiche: 

gamazup@gmail.com