Inspiration

We came up this idea because the team wanted to do something cool with data. Since we all enjoy playing basketball and are currently participating in NBA Fantasy league, we decided to do some data analysis with team and player statistics provided by nba.com/stats to predict which teams have a higher chance of winner on a given day facing a given opponent. The application will also run algorithms against the player data to predict individual performances of players. This way people are able to have a better understanding of the game and appreciate the game more, especially if they participating in the game activity and follow the league closely.

What it does

This is a full-stack web application that contains a database with individual team and player data, the application will ask the users to pick a player to analyze on a given day, or any day in the future. Then it run analysis algorithms against the players and teams to determine who wins and how this selected player will perform. It will output the winning team and a stats box for the player. The user can run this application against multiple players to determine who is the best option for tonight's game.

How I built it

We used flask to setup routing and templating for the API and on the client side. Used azure sql for the database and the machine learning is performed in Microsoft Azure. The application takes in input parameters, processed by flask, sends data to azure and data analysis happens there, flask will then receive predictions in json and it will be parsed in javascript for user output.

Challenges I ran into

Setting up azure and the database was the biggest challenge as there were limited documentation and involved many trial and errors. The creation of a custom API for nba.com/stats was another big challenge since there are no public API available to conveniently grab data from NBA.

Accomplishments that I'm proud of

Having successfully completed analysis and creating a RESTful API for nba.com/stats

What I learned

Learned how to hack with azure, connecting flask to the database and performing ML algorithms.

What's next for KnowTheGame

Adding new features such as querying for multiple teams and comparing data dynamically, right the application is still being limited to performing analysis on one team at a time.

Share this project:

Updates