Soccer Predictor
A JS library that predicts soccer match outcomes using basic mathematics.
Installation
yarn add soccer-predictor # yarn npm install soccer-predictor --save # npm
Install locally
git clone https://github.com/CookPete/soccer-predictor.gitcd soccer-predictoryarn # or npm install npm run build
Testing locally
npm test # Run tests
Usage
// Some basic example dataconst results = homeTeam: 'Team A' awayTeam: 'Team B' homeGoals: 1 awayGoals: 0 homeTeam: 'Team B' awayTeam: 'Team C' homeGoals: 2 awayGoals: 1 homeTeam: 'Team C' awayTeam: 'Team A' homeGoals: 1 awayGoals: 3 // Function to map match data to soccer-predictor data { return homeTeamName: matchhomeTeam awayTeamName: matchawayTeam homeGoals: matchhomeGoals awayGoals: matchawayGoals } // Parse results into an array of teams with calculated statsconst teams = // Use calculateProbabilities to calculate the chance of// various outcomes of a match between two teamsconst probabilities = console // Probability of a home win, away win or draw// {// home: 0.657541673613264,// draw: 0.252533180170396,// away: 0.089924594462736// } console // Probability of a 1-0 result// 0.2300324502673927 console // Probability of over 2.5 goals// 0.2895346409101279 console // Probability of both teams to score// 0.2429353553660894
For more examples, see examples
.
FAQ
How does it work?
There are plenty of articles available that go into depth about basic poisson prediction. Essentially the library parses a series of match results and provides functions to return a rough percentage likelyhood of various outcomes of a match between two teams.
Further reading:
- https://plus.maths.org/content/understanding-uncertainty-football-crazy
- http://opisthokonta.net/?p=296
- https://www.sbo.net/strategy/football-prediction-model-poisson-distribution/
Isn’t it called football?
Yes, but football-predictor
seems too ambigious. Everyone knows what soccer is.