DataBall: Betting on the NBA with data

This project combines my interest in data science with my love of sports. I attempt to predict NBA winners against the spread using stats pulled from the NBA stats website with nba_api and point spreads and over/under lines from covers.com using the Python web scraping framework Scrapy. All code is written in Python and I used the popular machine learning library scikit-learn to make all predictions.

Contents:

  • covers: Scrapy project to scrape point spreads and over/under lines from covers.com
  • databall: Python module with support functions to perform tasks including collecting stats to a SQLite database, simulating seasons, and customizing plots
  • docs: Code required to build the GitHub Pages site for this project
  • notebooks: Jupyter notebooks of all analyses
  • report: LaTeX files for report and slides

Link to a test database with data from 1990 - March 2020 test nba.db file