Um dos pontos estatisticos mais populares que os "dotados" no assunto de futebol gostam de falar do aproveitamento em casa. Estatisticamente falando, um time jogando em casa tem a vantagem. Estudos estatisticos indicam que times ganham com mais frequencia quando jogando em casa. Será que o campeonato Brasileiro se alinha com essa estatística?
Claro que podemos ligar a televisão e aguardar alguém comentar isso. Mas, porque não analisar você mesmo? Nesse post vamos ensinar como analisar os dados pra entender quantos jogos cada time ganha em casa e fazer um total em geral.
Antes de começarmos é importante saber que isso não é um analise alieatoria. Quero dizer que no futuro podemos usar esses números pra calcular a probabilidade de um time ganhar contra o outro. Se de fato, jogando em casa tem um peso estatistico, deve ser levado em consideraçao para futura analises.
Processo de Raciocinio
Uma analise de dados dessa forma requere um raciocinio pra chegar ao resultado final. Então vamos pensar no resultado final.
O resultado dever ser uma tabela mostrando cada time, total jogos em casa, total fora, vitórias em casa, vitórias fora, e a porcentagem de cada. E finalmente a porcentagem geral para o campeonato Brasileiro.
Bora começar isso.
Analisando os Dados
Bem, antes de mais nada, pra fazer essa analise, eu recomendo usar o Jupyter Notebook. Essa é a ferramenta que mais uso para analise de dados. Somente quando estou fazendo algo mais complicado que acabo usando um IDE como o VSCode ou o PyCharm. Se tiver alguma duvida de como installar tudo isso, temos outros posts aqui que explicam como fazer isso.
Você pode download o arquivo que vou usar pra essa analise abaixo.
[wpforms id="958" title="false"] Assim que tiver o seu arquivo, coloque no mesmo diretório que o seu notebook pra ficar mais facil de importar.
import pandas as pd
jogos_completos = pd.read_csv("brasileirao_2024.csv")

Ganhadores e Perdedores
O primeiro passo nisso tudo é determinar os ganhadores e perdedores em casa ou fora de casa. Pra isso temos que ajustar o Score modificando pra ser mais fácil de ler. Nesse processo, vou ter que criar duas colunas novas com os goals de casa e de fora de casa. Depois vou determinar se o time da casa ganhou ou perdeu.
# vamos dividir os goals pra determinar quem ganhou
jogos_completos[['Gols_Casa', 'Gols_Fora']] = jogos_completos['Score'].str.split("–", expand=True).astype(int)
# Determinar resultado
jogos_completos['Resultado_Casa'] = jogos_completos.apply(
lambda row: 'V' if row['Gols_Casa'] > row['Gols_Fora']
else ('D'if row['Gols_Casa'] < row['Gols_Fora'] else 'E'),
axis=1)
Com esse resultado, já posso mapear o restante. Então, por exemplo, se o time da casa ganhou, naturalmente o time de fora perdeu. E vice-versa. Se empatou, então é empate pra todos. Vamos mapear então.
jogos_completos['Resultado_Fora'] = jogos_completos['Resultado_Casa'].map({'V': 'D', 'D': 'V', 'E': 'E'})
Agrupando os Times
Já temos os dados que precisamos. Vamos agrupar tudo por times mostrando os resultados de cada time em casa. E já vamos adicionar o aproveitamento também.
emcasa = jogos_completos.groupby('Home')['Resultado_Casa'].value_counts().unstack(fill_value=0)
emcasa['total_casa'] = emcasa.sum(axis=1)
emcasa['vt_casa'] = emcasa.get('V', 0)
emcasa['pct_casa'] = emcasa['vt_casa'] / emcasa['total_casa']

Então veja só, o Atletico Paranaense teve um total de 19 jogos em casa, sendo que 8 foram derrotas, 4 empates, e 7 vitórias. Como estamos calculando somente vitórias, o Furacão só teve 37% de aproveitamento em casa. Já o Botafogo teve 63% com 12 vitórias.
Aproveitamento
Se você quer ver o aproveitamento de cada time. De acordo com a CBF, calculando o aproveitamento é:

Vamos adaptar isso para o nosso código. Aqui vai.
derrotas = jogos_completos.groupby('Home')['Resultado_Casa'].value_counts().unstack(fill_value=0)
derrotas['total_casa'] = derrotas.sum(axis=1)
derrotas['vit_casa'] = derrotas.get('V', 0)
derrotas['emp_casa'] = derrotas.get('E', 0)
# Aproveitamento oficial
derrotas['aproveitamento'] = ((derrotas['vit_casa'] * 3) + (derrotas['emp_casa'] * 1)) / (derrotas['total_casa'] * 3)
derrotas.sort_values(by="aproveitamento", ascending=False)

Ja vimos que o Fortaleza teve o maio aproveitamento em casa do que qualquer outro time.
Conclusão
Nesso post vimos como fazer um analize geral de aproveitamento de cada time. Da pra ver que no geral, o campeonato brasileiro tem um aproveitamento de 56.2%. Seria interessante ver o aproveitamento de times de outras ligas e comparar com a nossa. Isso seria assunto pra outro post.
Comentários (0)
Seja o primeiro a comentar!
Deixe um comentário