Need Custom Training for Your Team?

Get Quote

Call Us

Toll Free (844) 397-3739

Inquire About This Course


Thumb af27e5f1 b13b 4a55 848a 1a25249fbd34

Dr. Stylianos Kampakis

Stylianos has worked with British Premier League club, Tottenham Hotspur FC, to build predictive models for football injuries. Currently he is working at Brandtix, building the world's first holistic football index, which measures an athlete's value using both his performance and his social media presence. In the last 5 years Stylianos has worked in machine learning and statistics. Currently he is researching how data mined from Twitter can be used to predict games in the Premier League.

Predicting Sports Outcomes Using Python and Machine Learning

Instructor: Dr. Stylianos Kampakis

Sports betting and web crawling using Python and machine learning

  • Students will learn about how to use Python and machine learning in order to predict sports outcomes. It takes you through all the steps for making profitable bets. 
  • The instructor worked with Tottenham Hotspur FC of British Premiere League to build predictive models for football injuries.

Course Description

The purpose of this course is to teach about how to use Python and machine learning in order to predict sports outcomes. It takes you through through all the steps, from collecting data using a web crawler to making profitable bets based on your predicted results. The course is built around predicting tennis games, but the things taught can be extended to any sport, including team sports. The course includes: 1) Intro to Python and Pandas. 2) Instructions on how to build a crawler in Python for the purpose of getting stats. 3) Data wrangling. 4) Using machine learning for sports predictions. 5) Discussion on advanced topics, like extension to team sports and using social media, such as Twitter, for additional information. This course is geared towards people that have some interest in data science and some experience in Python. It does not require extensive coding experience, since all the scripts are provided. No prior experience in data science is required, even though it could be helpful. All the basic concepts are explained within the course. Skills learned: Machine learning, web crawling, data wrangling and manipulation Tools used: Python, Pandas, Scikit learn Course Curriculum 1. Introduction to the course 2. Python and Pandas primer 3. Data crawling 4. Model testing and metrics 5. Data analysis 6. Advanced topics 7. Summary

What am I going to get from this course?
1) Design and code a machine learning pipeline in Python for predicting sports outcomes.
2) Build and use a web crawler in Python to extract the data from online sources.
3) Understand all the concepts and pitfalls behind prediction in sports.

Prerequisites and Target Audience

What will students need to know or do before starting this course?
The course assumes that students do not know Python or machine learning, but that they do have some familiarity with basic programming concepts or languages. Therefore, experience in Python or Machine Learning is not required, but will help.
Who should take this course? Who should not?
Who should take this course? Who should not?
This course is for the following audiences:

1) Anyone who is interested in learning how machine learning can be used in sports betting.
2) Anyone who is looking for a beginner's course in machine learning, in an applied setting.

3) Anyone who is interested in sports analytics.
Who shouldn't take this course:
Even though the course teaches you how to use machine learning to make profit in a betting setting, it is not a get rich quick scheme. Building a successful model that can systematically beats the odds requires many hours of work and experimentation. This course will teach you some of the fundamentals to do that.


Module 1: Introduction
Lecture 1 Introduction to the course
Lecture 2 Predicting tennis: introduction
Quiz 1
Module 2: Python and Pandas primer
Lecture 3 Python primer
Lecture 4 Introduction to Pandas
Module 3: Data Crawling
Lecture 5 Data crawling
Lecture 6 Data crawling: code
Lecture 7 Data merging
Lecture 8 Data merging: code
Module 4: Model testing and metrics
Lecture 9 Statistical models
Lecture 10 Machine learning model validation
Lecture 11 Machine learning tips
Lecture 12 Metrics for classification
Lecture 13 Metrics for regression
Module 5: Data analysis
Lecture 14 Data analysis: Part 1
Lecture 15 Data analysis: Part 2
Module 6: Advanced topics
Lecture 16 Using human input and social media
Lecture 17 Team sports
Quiz 2
Module 7: Summary
Lecture 18