Elo Ratings#
[1]:
import penaltyblog as pb
[2]:
elo = pb.ratings.Elo()
New Teams Default to 1500 Elo#
[3]:
elo.get_team_rating("Team A"), elo.get_team_rating("Team B")
[3]:
(1500.0, 1500.0)
Predict Match Results#
[4]:
elo.calculate_match_probabilities("Team A", "Team B")
[4]:
{'home_win': np.float64(0.5060806246811322),
'draw': np.float64(0.20932932618252026),
'away_win': np.float64(0.28459004913634756)}
Update Ratings#
[5]:
elo.update_ratings("Team A", "Team B", 0)
Get New Ratings#
[6]:
elo.get_team_rating("Team A")
[6]:
1507.1987000039423