Chapter 8 Exercises: Shooting Efficiency Metrics
Section 8.1: Field Goal Percentage Fundamentals
Exercise 8.1 (Basic)
A player attempts 15 field goals in a game and makes 7. Calculate their field goal percentage.
Exercise 8.2 (Basic)
If a player has a 45% field goal percentage and attempts 200 shots in a season, how many field goals did they make?
Exercise 8.3 (Intermediate)
Compare two players: - Player A: 8/18 FG (4 three-pointers made) - Player B: 9/20 FG (2 three-pointers made)
Which player was more efficient from a pure FG% standpoint? Which player scored more points from field goals?
Exercise 8.4 (Intermediate)
A team shoots 42% from the field. If they average 85 field goal attempts per game, how many points per game do they score from field goals alone (assuming the league average of 35% of made FGs are three-pointers)?
Section 8.2: Effective Field Goal Percentage (eFG%)
Exercise 8.5 (Basic)
Calculate the eFG% for a player who goes 8-for-20 with 4 three-pointers made.
Exercise 8.6 (Basic)
Player X has an eFG% of 55% on 400 field goal attempts with 100 three-pointers made. Calculate their raw FG%.
Exercise 8.7 (Intermediate)
Two players have identical FG% of 45%: - Player A: 150 FGM, 50 3PM out of 333 FGA - Player B: 150 FGM, 100 3PM out of 333 FGA
Calculate each player's eFG% and explain the difference.
Exercise 8.8 (Intermediate)
A player wants to achieve an eFG% of 60%. If they plan to take 500 shots with 40% being three-point attempts: - What FG% would they need on two-point shots? - What FG% would they need on three-point shots? - Assume they shoot equally well from both (same percentage).
Exercise 8.9 (Advanced)
Derive the relationship between eFG% and points per shot attempt. Show that eFG% = (Points from FG) / (2 * FGA).
Section 8.3: True Shooting Percentage (TS%)
Exercise 8.10 (Basic)
Calculate TS% for a player with the following stat line: - 25 points - 8-for-18 FG - 6-for-8 FT
Exercise 8.11 (Basic)
A player has a TS% of 58% and scored 1,500 points in a season. What were their True Shooting Attempts (TSA)?
Exercise 8.12 (Intermediate)
Compare the efficiency of these three players:
| Player | Points | FGA | FTA |
|---|---|---|---|
| A | 20 | 15 | 8 |
| B | 20 | 18 | 2 |
| C | 20 | 12 | 12 |
Exercise 8.13 (Intermediate)
Why is the coefficient 0.44 used in the TSA formula instead of 0.5? Research and explain with examples of and-one plays and technical free throws.
Exercise 8.14 (Advanced)
A team wants to maximize their offensive efficiency. They have two options for their final possession: - Option A: Post-up with 55% chance of making a 2-pointer - Option B: Three-point shot with 38% success rate
Using expected value analysis, which option should they choose? What if Option A also has a 15% chance of getting fouled (assume 75% FT shooter)?
Section 8.4: Shot Distribution and Three-Point Revolution
Exercise 8.15 (Basic)
Calculate the three-point attempt rate (3PAr) for a player who takes 180 three-point attempts out of 450 total field goal attempts.
Exercise 8.16 (Intermediate)
The league average eFG% on two-point shots is 50% and on three-point shots is 35% (which equals 52.5% eFG%). A player shoots 60% of their shots from three-point range. What minimum three-point percentage do they need to be above league average efficiency?
Exercise 8.17 (Intermediate)
# Given the following data, calculate the optimal shot distribution
two_point_pct = 0.52 # FG% on 2-pointers
three_point_pct = 0.36 # FG% on 3-pointers
free_throw_pct = 0.80
# Calculate:
# 1. Expected points per 2-point attempt
# 2. Expected points per 3-point attempt
# 3. The indifference point (what 3P% makes 3-pointers equally valuable?)
Exercise 8.18 (Advanced)
Using historical NBA data concepts: - In 2000, the average team attempted 15 three-pointers per game at 35% accuracy - In 2020, the average team attempted 35 three-pointers per game at 36% accuracy
Calculate the additional points per game generated by the three-point revolution, assuming two-point efficiency remained constant.
Section 8.5: Python Implementation
Exercise 8.19 (Coding - Basic)
def calculate_shooting_metrics(fgm, fga, fg3m, ftm, fta, pts):
"""
Calculate FG%, eFG%, and TS% for a player.
Parameters:
-----------
fgm : int - Field goals made
fga : int - Field goals attempted
fg3m : int - Three-point field goals made
ftm : int - Free throws made
fta : int - Free throws attempted
pts : int - Total points
Returns:
--------
dict with 'fg_pct', 'efg_pct', 'ts_pct'
"""
# Your code here
pass
# Test with: fgm=8, fga=18, fg3m=3, ftm=5, fta=6, pts=24
Exercise 8.20 (Coding - Intermediate)
import pandas as pd
def rank_players_by_efficiency(df, min_fga=100):
"""
Rank players by TS% with minimum shot attempts.
Parameters:
-----------
df : DataFrame with columns ['player', 'pts', 'fga', 'fta', 'fg3m', 'fgm']
min_fga : minimum field goal attempts to qualify
Returns:
--------
DataFrame sorted by TS% descending with efficiency metrics added
"""
# Your code here
pass
Exercise 8.21 (Coding - Intermediate)
def shot_quality_analysis(shot_data):
"""
Analyze shot quality by zone.
Parameters:
-----------
shot_data : DataFrame with columns ['shot_zone', 'shot_made', 'shot_value']
Returns:
--------
DataFrame with zone-by-zone efficiency metrics including:
- attempts, makes, fg_pct, efg_pct, points_per_attempt
"""
# Your code here
pass
Exercise 8.22 (Coding - Advanced)
def calculate_league_relative_ts(player_ts, league_ts):
"""
Calculate a player's TS% relative to league average.
Parameters:
-----------
player_ts : float - Player's true shooting percentage
league_ts : float - League average true shooting percentage
Returns:
--------
float - Relative TS% (e.g., +5.0 means 5 percentage points above average)
"""
# Your code here
pass
def estimate_points_added(player_ts, league_ts, true_shooting_attempts):
"""
Estimate points added above average due to shooting efficiency.
Returns:
--------
float - Estimated points added over the season
"""
# Your code here
pass
Section 8.6: Visualization Exercises
Exercise 8.23 (Visualization)
Create a scatter plot showing the relationship between 3PAr (three-point attempt rate) and eFG% for all NBA teams in a season. Include: - Team labels - League average lines for both metrics - Quadrant labels (high volume/high efficiency, etc.)
Exercise 8.24 (Visualization)
Build a shot chart visualization that shows: - Shot locations colored by made/missed - Zone boundaries - eFG% labels for each zone - League average comparison
Exercise 8.25 (Visualization - Advanced)
Create an animated visualization showing the evolution of a team's shot distribution over a season, with: - Rolling 10-game average - Comparison to optimal shot distribution - Efficiency trend line
Section 8.7: Case Study Exercises
Exercise 8.26 (Analysis)
Analyze the shooting efficiency evolution of a specific player over their career: 1. Plot TS% by season 2. Calculate shot distribution changes 3. Identify when they became a three-point shooter (if applicable) 4. Correlate efficiency changes with team success
Exercise 8.27 (Analysis)
Compare the shooting profiles of two MVP candidates: 1. Calculate all efficiency metrics 2. Break down by shot type (rim, mid-range, three-point) 3. Analyze clutch shooting (last 5 minutes, score within 5) 4. Make a recommendation for who is more valuable
Exercise 8.28 (Analysis - Advanced)
Build a shot quality model that adjusts for: - Defender distance - Shot clock remaining - Game situation (score differential) - Calculate expected eFG% vs actual eFG%
Section 8.8: Research Questions
Exercise 8.29 (Research)
Investigate the "mid-range death" phenomenon: 1. How has mid-range shot volume changed over the past 20 years? 2. What is the efficiency of mid-range shots compared to other shot types? 3. Are there players who justify taking mid-range shots? 4. Build a model to identify when mid-range shots are acceptable.
Exercise 8.30 (Research)
Analyze the relationship between shooting efficiency and team success: 1. What is the correlation between team TS% and win percentage? 2. Is offensive or defensive efficiency more predictive? 3. How much does shooting efficiency vary game-to-game? 4. Can you predict playoff success from regular season efficiency?
Challenge Problems
Challenge 8.1
Design a new shooting efficiency metric that accounts for: - Shot difficulty (defender proximity, shot clock) - Game context (score, time remaining) - Player role (primary vs secondary options) Justify your formula and test it against existing metrics.
Challenge 8.2
Build a complete shooting efficiency dashboard that: - Pulls real-time NBA data - Calculates all efficiency metrics - Provides player comparisons - Includes historical context - Generates automated insights
Challenge 8.3
Investigate whether there's an optimal balance between volume and efficiency: - At what point do diminishing returns begin? - How does this vary by player skill level? - Can you model the "efficiency curve" for different player types?
Solutions
Solutions to selected exercises are available in Appendix G.