CS 109 NBA Basketball Logan Kerr, Eric Lu, Jeff Wang, Annie Yang

Welcome

Thanks for visiting our site. This website documents the work of Logan, Eric, Jeff, and Annie on our CS 109 final project on predicting the outcome of NBA basketball games. To take a look at our work, feel free to explore the tabs above. Thanks for browsing and we hope you enjoy your time!

Screencast

Our story

Inspired by Moneyball, our group set out to predict the outcome of NBA basketball games using mathematical and statistical methods. We created two different process for predicting game outcomes. The first process involved randomly sampling from individual players' historical scores to arrive at a predicted average score for each team. The second process used historical data to create complex team ratings using combinations of simple game metrics. These rankings were updated as new data became available, incorporating new evidence to increase the accuracy of our probability estimates. For each process, we experimented with adding or omitting certain metrics to get the best possible predictions for NBA games. Finally, we used our modified processes to predict the 2013 NBA Bracket results. The results for these predictions are shown below.

Comparing the results from our two processes, we found that both methods produced predictions that were comparable in accuracy, correctly predicting around 55% of games in the current 2013-2014 season (slightly better than chance). We also found that adding more variables to the processes increased our accuracy by a marginal 3-5%. Thus we conclude that while game metrics can capture the innate skills of a player, they fail to accurately account for game-day variables which, given the volatile nature of basketball games, can have a significant effect games' outcomes.

Repository

To access the code itself and supporting files, clone the project from our BitBucket repo: https://justswim@bitbucket.org/justswim/cs-109-nba-basketball.git.