Análise de transferência de jogadores entre clubes do futebol europeu
Objetivo
O objetivo desse projeto é visualizar como ocorre a dinâmica entre clubes europeus de futebol em relação à transferência de seus jogadores. Para isso será modelada uma rede a partir de um dataset com dados de 1992 a 2020. E após isso, fazer a análise de suas propriedades.
Links para o Colab
Fonte dos dados
Os dados foram obtidos através de um projeto no github do usuário ewenme, que por sua vez, extraiu dados do site Transfermarket utilizando uma técnica de raspagem de dados, em acordo com os termos de uso do site. O dataset possui informações das transferências entre os anos de 1992 a 2020 envolvendo clubes das 9 principais ligas de futebol da Europa. São elas:
- Premier League (Inglaterra)
- EFL Championship (Inglaterra)
- La Liga (Espanha)
- Bundesliga (Alemanha)
- Serie A (Italia)
- Ligue 1 (França)
- Liga NOS (Portugal)
- Eredivise (Países Baixos)
- Russian Premier League (Rússia)
Limpeza dos dados e modelagem da rede
Para modelar a rede foram necessárias algumas etapas de transformação e limpeza dos dados:
- O usuário que disponibilizou o dataset no github separou os dados em vários arquivos csv’s, dividindo os arquivos por ano e liga, totalizando 261 arquivos. Por isso, o primeiro passo foi concatenar todos estes arquivos em uma única tabela do Pandas (Dataframe).
- Algumas linhas possuem transferências envolvendo jogadores que se aposentaram, que estavam sem clube ou que estavam em clubes desconhecidos. Esses dados são indesejados para modelar a nossa rede, por isso estas linhas foram removidas.
- Nesta etapa foram delimitadas as colunas da tabela que serão utilizadas. Iremos utilizar apenas as colunas “club_name” e “club_involved_name”, que são os clubes de origem e destino dos jogadores. As demais colunas foram removidas.
- Foram removidas possíveis duplicações das linhas, ficando apenas linhas com valores únicos.
- Nesta etapa foram removidas linhas com valores invertidos, mas que na prática representam apenas uma aresta na rede. Se houver duas linhas invertidas, uma delas deverá ser removida da tabela.
- Por último, a tabela foi convertida em um arquivo do tipo edgelist, onde cada linha do arquivo corresponde a uma aresta com o nome dos dois nós que ela conecta.
Análises
Vamos agora analisar algumas propriedades da rede modelada.
Número de nós, enlaces e densidade:
╔═══════════════════╦═══════╗
║ Número de nós ║ 5744 ║
╠═══════════════════╬═══════╣
║ Número de enlaces ║ 44956 ║
╠═══════════════════╬═══════╣
║ Densidade ║ 0,27% ║
╚═══════════════════╩═══════╝
O grafo possui uma quantidade considerável de nós, com uma densidade baixa. Essas características são esperadas para uma rede real.
Conectividade:
O grafo é completamente conectado, o que faz sentido devido ao contexto globalizado que se encontra o futebol. Dificilmente algum clube ficaria isolado dos demais, ainda mais se tratando das principais ligas do futebol mundial.
Medidas de grau:
╔═════════════╦════════════════╗
║ Grau médio ║ 15,65 ║
╠═════════════╬════════════════╣
║ Hub ║ Udinese Calcio ║
╠═════════════╬════════════════╣
║ Grau do Hub ║ 454 ║
╚═════════════╩════════════════╝
A rede possui um grau médio relativamente alto, se comparado a outras redes reais ou redes fictícias equivalentes. Mesmo assim, é um resultado esperado devido a natureza da rede. É natural que um clube de futebol negocie jogadores com muitos outros clubes ao longo dos anos. Em relação ao Hub, confesso que fiquei surpreso, estava esperando um clube um pouco mais competitivo do que a Udinese. Vale ressaltar que a Udinese não é necessariamente o clube que mais movimenta transferências de jogadores, mas sim o que negocia com mais clubes diferentes.
Histograma da distribuição do Grau:
Como esperado para uma rede real, a distribuição do grau segue uma lei de potência.
Top 10 nós (clubes) com maior grau:
╔════════════════════╦═══════════╦═══════╗
║ Clube ║ País ║ Grau ║
╠════════════════════╬═══════════╬═══════╣
║ Udinese Calcio ║ Itália ║ 454 ║
║ SL Benfica ║ Portugal ║ 411 ║
║ Sporting CP ║ Portugal ║ 374 ║
║ Genoa CFC ║ Itália ║ 351 ║
║ Internazionale ║ Itália ║ 348 ║
║ Vitória Setúbal FC ║ Portugal ║ 337 ║
║ Juventus ║ Itália ║ 334 ║
║ Belenenses SAD ║ Portugal ║ 327 ║
║ AS Roma ║ Itália ║ 325 ║
║ CS Marítimo ║ Portugal ║ 324 ║
╚════════════════════╩═══════════╩═══════╝
Curiosamente, os 10 clubes com maior grau pertencem a apenas 2 países: Portugal e Itália. Talvez isso se explique no fato de que os clubes desses 2 países compram muitos jogadores de outras ligas menores e depois os vendem para mercados mais competitivos da Europa, com isso, eles movimentam muitas transferências com muitos clubes diferentes.
Coeficiente de Aglomeração:
╔════════════════════════════╦═══════╗
║ Coeficiente de aglomeração ║ 0,355 ║
╠════════════════════════════╬═══════╣
║ Qtd de nós com cc = 1 ║ 975 ║
╚════════════════════════════╩═══════╝
A rede possui um alto valor de CC, e aproximadamente 17% dos nós com cc igual a 1. Isso se explica no fato que a maior parte das transferências ocorre entre clubes da mesma liga, formando assim esses agrupamentos que tornam o CC tão alto.
Caminhos:
╔══════════════════════════════════╦═══════╗
║ Tamanho médio dos caminhos (TMC) ║ 3,226 ║
╠══════════════════════════════════╬═══════╣
║ Diâmetro ║ 5 ║
╚══════════════════════════════════╩═══════╝
A rede apresenta um TMC muito pequeno para uma rede desse porte, mas como explicado anteriormente, isso é esperado para uma rede dessa natureza.