Jokic's assists and Murray's points: what do the Denver Nuggets miss more?
In this data science project, I deploy a ML app that compares the influence of a pair of NBA teammates’ stats on their team’s winning chances using logistic regression, SHAP values, Hopsworks and Streamlit.
The motivation for this work came to me while watching last season's (2022-23) NBA finals between the Denver Nuggets and the Miami Heat. I was watching the finals on ESPN when one of the commentators, the great Ernesto Jerez, asked what were the Nuggets missing more: Jokic's assists or Murray points. I don't recall what game was it nor the exact moment during the game when Ernesto raised this question, and it seems difficult to pinpoint it since the Nuggets were rarely trailing behind in the score during any of the finals' games.
At any rate, I found the question interesting and decided to dig into it. I started this endeavor by creating three notebooks that (i) pull the necessary data from the nba_api and prepare it, (ii) perform an EDA to get an understanding of the data and (iii) fit a logistic regression model and compute SHAP values to explore the influence of Jokic's assists and Murray's points on the Nuggets' chances of winning a game.
I continued the work by deploying a frontend. The frontend (i) performs an ETL process that pulls data from the nba_api, prepares it and pushes it into a Hopsworks feature store and (ii) fits a logistic regression model and computes SHAP values to compare the influence of Jokic's assists and Murray's points (among others) on the Nuggets' chances of winning a game. The fronted is available as a Streamlit app.
Details about the implementation and the results can be found in the project’s repo.