Model Builder
Explore what predicted 3-point shot makes in the 2014–15 NBA season. Test whether adding different shot conditions improves the model — or build one from scratch.
Variable cards start empty. Click Load default model to load the published six-variable model as a starting point, then add or remove shot conditions to see how fit changes — or build one from scratch. Use the simulator at the bottom to test individual scenarios.
You can also open the Bayesian Network Key Driver Analysis (BETA) directly — no prior model needed. It fits a causal network on its own, showing which shot conditions drive makes (the levers you can act on) versus which only ride along with the make rate.
How to Use This Tool
Not sure where to start? Variable cards begin empty — click Load default model to load the published six-variable model, then Run Analysis at the bottom to see how it performs and add or remove variables to explore. Or use Auto-Build to search automatically.
How to Use This Tool
Not sure where to start? Variable cards begin empty — click Load default model to load the published six-variable model, then Run Analysis at the bottom to see how it performs and add or remove variables to explore. Or use Auto-Build to search automatically.
1. Pick an outcome
The outcome is 3-Point Shot Make — whether the shot went in (1 = made, 0 = missed). The case study uses this single outcome; all models predict it.
2. Pick predictors
Use the search box and category buttons to find shot-condition variables across Shot Mechanics, Shot Defense, and Game Context. Cards start empty — Load default model loads the six published-model predictors as a starting point; add or remove any. Run Analysis is capped at 20 predictors; Auto-Build searches the full set and isn't capped.
3. Fit and read
Click Run Analysis to fit the model with whatever variables you've checked. Or use Auto-Build Standard to let the algorithm search all variables automatically, or Auto-Build Actionable Predictors to weight selection toward variables coaches and players can influence (shot distance, defender distance) over fixed game context (period, game margin).
Optional: player
By default, the model is fit on all 33,362 shots from the 2014–15 season. Optionally pick a single player using the Model shots for dropdown to fit on just their attempts — useful for asking "what predicts this shooter's makes?" Players with fewer than 100 attempts are hidden.
After you run — what to expect
Review results
Results show how well the model predicts shot makes and how much each condition contributes. The Other Conditions in This Data section lists every variable not yet in your model — each card shows whether adding it would likely improve fit.
Use the simulator
Click Launch in the Simulator panel to open an interactive tool. Set any combination of shot conditions — e.g. Defender Distance "Tight" and Shot Clock "Late" — and watch the predicted make probability update instantly.
Iterate and compare
Each run is saved in the Saved Analyses tray. Click Load to restore a run, or Pin two runs to view them side by side. Each card shows Tjur R², AUC, and Brier — higher Tjur R² and AUC, lower Brier means a better-performing model.
If you ran with a synthetic variable, results show three sections:
Full Model
Complete model including all selected predictors and the synthetic variable.
Base Model
Model performance without the synthetic variable.
Synthetic Variable Performance
How well the synthetic met its specifications and its impact on model fit.
Auto-Build selected 0 predictors (forward stepwise, Tjur R²)
Step log
- Initialising…
- Screening candidate predictors
- Running forward stepwise selection
- Fitting final model
- Computing diagnostics & margins
Full Model Performance
Complete model including all predictor variables and the synthetic variable
Run an analysis to generate an interpretation.