Basketball Analytics
This repository and scripts in it will be focusing on the statistics revolving around NBA and basketball in general.
All code is written in Python using the Jupyter Notebooks which allow live preview of the images and thus making it nice and easy to analyze and visualize data.
Current mini "projects":
2021-22 Season
-
Simple plot which checks if there is correlation between box outs and DRB%: Notebook
-
Shotchart notebook with one new plot type - change of shot frequency in each zone
-
Finding which players get more of real assists, and which get more fake assists: notebook - also uses pbp data
-
Notebook which finds assist combos (in this case, alley oop partners), it uses data retrieved through Play-by-Play downloader
2020-21 Season
Playoffs
Regular Season
-
LONG DISTANCE ANALYSIS + AVERAGE DISTANCE ARC: Analysis of long distance shooters (Notebook) and average 3pt arc
-
CALCULATING RIM DETERRENEC AND BLOCK EFFICIENCY: How to calculate Rim deterrence from play-by-play data + block efficiency(recovery): Notebook
-
GOBERT ANALYSIS: Big analysis on Gobert's dominance on defense: Notebook
-
ASSIST CHART: Simple assist chare with share of total shots in that area: Notebook
-
DENVER NUGGETS' ANALYSIS: Various charts regarding Denver Nuggets: Notebook
-
BIGGEST RA SHARE OF SHOTS: Table which shows Zion's dominant numbers: Notebook
-
CLUTCH ANALYSIS: Various tables and "face scatters" for clutch data: Notebook
-
HUSTLE landscape: Simple scatter for hustle data: Notebook
-
ALL SHOTS BY KOBE: Every shot generated into a gif per season level: Notebook
-
PACE/TS/FT per seasons: BBRef scraper plus line charts for TS%, Pace, FGA per game per seasons and for FTAs per game per season
-
TEAM EFFICIENCY LANDSCAPE: Goldsberry-like plot with Net rating landscape: Notebook
-
GAME LENGTH ANALYZER: Notebook -> checking out what part of the game lengthens the game
-
PLAYER's FACE IMAGE DOWNLOADER: Simple script which downloads all active players' images (based on nba_api package): Notebook
-
STINT FINDER: Notebook which finds the stint for player - when and how long he's on court
-
PLAY-BY-PLAY DOWNLOADER AND (partial) PARSER: Notebook which downloads play-by-play data and finds when player is on/off court
-
Biggest difference in opponent's wide open triples vs all teams and vs target teams - full post available at my website
-
Couple of charts analyzing the (d)evolution of Blake Griffin
Preseason
2019-20 Season
Playoffs
-
Lakers - Nuggets Radar chart, Boston - Miami Radar Chart, and there are others as well. Basically a "breakdown" of their offenses through radar chart, which is a nice way to display numerical values across multiple categories.
-
Biggest change in unassisted Field Goals This shows how the amount of Unassisted field goal makes changed from regular season to first and 2nd round (will update this with conference finals when finished).
-
Westbrook's adaptation to Rockets -> Not really connected to playoffs, but it shows how Russ didn't play as other Rockets' players, but ran his own game...
-
The PJ Tucker Paradox, where his average distance of 3pt shot is shorter than three on top of the key.
-
Mid-Range heavy Shot chart by DeMar Derozan
2018-19 Season
-
Evolution of Brook Lopez, a look at change of Lopez' shot charts through the seasons
-
Predicting MVP for 2018-19 nba season.
-
Here is notebook which shows players that excel in the clutch.
-
Big Luka Dončić analysis, notebook
-
James Harden analysis, notebook
2017-18 Season
-
Assists distribution between each NBA team for 2016/2017 season
-
Visualization of best 3 point shooters on very tight, tight, open and wide open defense
- Notebook to compare shooters based on closest defender
-
Shotcharts from past 2017 Eurobasket comparing Bogdanovics and displaying Markkanen's shooting ability
-
Bojan vs Bogdan comparison on shot charts
-
Lauri Markkanen's amazing first round shot chart
-
-
Comparison of clutch vs regular time shooting for top 20 NBA scorers in 2016/2017 season
- Notebook for FG%, FT%, TS% comparison in regular vs clutch time
-
Various stats analysis using Kaggle's dataset with NBA stats from 1950 season
-
Swarmplot of rookie stats for their first regular game in 2017-18 nba season, as well as comparison of Ben Simmons' and Markelle Fultz' debut with other first round picks
- Notebook which takes at look at previously described tasks.
-
Inspired by Aaron Gordon's first 40 point game, I took a look at how other young players his age, or younger, improved during their first 40 point game (only the ones which aren't rookies)
- Notebook Which visualizes players improvement in points per game during the season in which they scored 40 points or more.
-
A look at Russell Westbrook's 2016-17 season in which he won MVP award and averaged triple double.
- Notebook with some charts displaying Westbrook's averages through season.
-
Radar plots which describe player's style.
-
Analysis of Players of the week/month in the NBA
- Notebook for week two.
-
James Harden's chase for three point heights
- Notebook where I show the pace of James Harden's three point shooting.
-
Stephen Curry's chase for three point record
- Notebook where Stephen Curry's progress in total three pointers made through career games in comparison with other top shooters
-
Free throw improvement for some centers
- Here is notebook where improvements for some of the players like Clint Capela and Andre Drummond can be seen in comparison to last season
-
Most improved three point shooters
- I analyzed which were the most improved three point shooters up to this point in season in this notebook
-
Fourth quarter scoring thus far
- LeBron James has by far the most points thus far in current season, that can be seen here