Fantasy Basketball, Online Analysis Tool Kit

Posted on Oct 18, 2019
The skills I demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.


Fantasy basketball is an online gaming platform that allows anyone to become general managers of their own NBA team. The fantasy season begins every year with the NBA season during which fantasy players partake in drafting their own basketball team and engage in match-ups with opponents within the same fantasy league.  The application described here provides visualization tools for the user to observe trends and correlations in the NBA as well as a drafting tool kit that automatically selects the best lineup based on users' preferences. The application can be found at:

The Goal

Fantasy basketball is a complex betting game built on top of a highly statistical, albeit not purely predictable, game of basketball. To be successful in any fantasy basketball league, one would need a deep understanding of the game itself, a thorough knowledge of the past and present NBA, and obviously some luck. The first goal for this application is to lay everything about the NBA out there in a user-friendly manner.

The intent is for the user to be able to get everything s/he needs in one location and be able to easily prepare for the new season or the next match-up. The second goal of the application is to recommend viable and competitive teams for users to adopt. This is in particular to address the problem of drafting low-tier players too randomly and to prevent users from overpaying top-tier NBA players. Ultimately this application was made to give the user an enjoyable experience exploring NBA statistics and an easier time crafting fantasy strategies. 

The Tool Kit

Knowing the trends and correlations in the NBA reduces the already massive amount of uncertainty one faces when entering a new season. Four tabs in the application are dedicated to this purpose:

  • NBA Stats Trends
  • NBA Stats Correlations
  • Correlation Behavior
  • Fantasy Stats Trends

Example of correlation table for users to gain deeper insight on how statistics are connected. 

The application has notes that walk through a new user through a simple example of how to explore the gigantic parameter space (looking in particular the three point shot). Here, the functionality of each tab will be briefly introduced.

"NBA Stats Trends" allows the user to look at how statistics evolved over time, "NBA Stats Correlations" and "Correlation Behavior" work hand in hand, with the former giving the user a big picture of the correlations of statistics in the NBA, and the latter letting the user look more microscopically into the behavior of the correlation between statistics. "Fantasy Stats Trends" primarily is used to allow users to see how statistics behave during a draft-- some statistics become rare during a draft while some not so much, and this, for the serious player, must be factored in. 

Example of plot for trend visualization. This type of information gives the user foresight for the upcoming and future fantasy seasons. 

Optimization Problems

The biggest problems in fantasy basketball are all optimization problems. However, with such a large amount of statistics to account for, the optimization process can be overwhelming especially for the newcomer. There are two tabs that help automate this process and they are:

  • Fantasy Draft
  • Fantasy Match-ups

Get auction values and team recommendations based on user preference.

In "Fantasy Draft", users can input weights for different statistical categories, as well as other league-related information, and the program will compute the appropriate auction value/market price and player value for the NBA players. A table will also list a team that best satisfies the user's preference while maximizing the total player value.

"Fantasy Match-ups" allows the user to key in the competing teams (or individual players) and compares the statistics. A summary of the results is presented and can be aptly used as feedback for making team adjustments. Additional information on methodology and raw data are also provided.

Get match-up prediction results. Use this as information for team adjustments.

The Data

Data on NBA statistics (1950-2019) were web-scraped from The ESPN fantasy rankings and projected statistics for NBA players (2014-2020) were web-scraped from

Future Work

This application still has a lot of room for improvements. For instance, the algorithm behind calculating auction values (or player value) can be fine-tuned, a program can be incorporated to project player statistics rather than relying on ESPN's current projection, and the user interface can be made much friendlier. As I continue to polish this application, I welcome any feedback on how to make this the dream tool for any fantasy basketball player. Please contact me at: [email protected]


About Author

Austin Cheng

Austin is an experienced researcher with a PhD in applied physics from Harvard University. His most notable work is engineering the first single electronic guided mode and explaining it with computational simulation. He is passionate about the growing...
View all posts by Austin Cheng >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 2020 Revenue 3-points agriculture air quality airbnb airline alcohol Alex Baransky algorithm alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus ames dataset ames housing dataset apartment rent API Application artist aws bank loans beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep boston safety Bundles cake recipe California Cancer Research capstone car price Career Career Day citibike classic cars classpass clustering Coding Course Demo Course Report covid 19 credit credit card crime frequency crops D3.js data data analysis Data Analyst data analytics data for tripadvisor reviews data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization database Deep Learning Demo Day Discount disney dplyr drug data e-commerce economy employee employee burnout employer networking environment feature engineering Finance Financial Data Science fitness studio Flask flight delay gbm Get Hired ggplot2 googleVis H20 Hadoop hallmark holiday movie happiness healthcare frauds higgs boson Hiring hiring partner events Hiring Partners hotels housing housing data housing predictions housing price hy-vee Income Industry Experts Injuries Instructor Blog Instructor Interview insurance italki Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter las vegas airport lasso regression Lead Data Scienctist Lead Data Scientist leaflet league linear regression Logistic Regression machine learning Maps market matplotlib Medical Research Meet the team meetup methal health miami beach movie music Napoli NBA netflix Networking neural network Neural networks New Courses NHL nlp NYC NYC Data Science nyc data science academy NYC Open Data nyc property NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time performance phoenix pollutants Portfolio Development precision measurement prediction Prework Programming public safety PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R R Data Analysis R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn seafood type Selenium sentiment analysis sentiment classification Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau teachers team team performance TensorFlow Testimonial tf-idf Top Data Science Bootcamp Top manufacturing companies Transfers tweets twitter videos visualization wallstreet wallstreetbets web scraping Weekend Course What to expect whiskey whiskeyadvocate wildfire word cloud word2vec XGBoost yelp youtube trending ZORI