Exercises: Special Teams Analytics

Difficulty Levels

  • Level 1 (Foundational): Basic special teams calculations
  • Level 2 (Applied): Player and team evaluation
  • Level 3 (Intermediate): Expected value analysis
  • Level 4 (Advanced): Decision analysis
  • Level 5 (Expert): Comprehensive evaluation

Section 1: Kicking Analysis (Level 1-3)

Exercise 1.1: Field Goal Percentage

Level 1 | Basic

Calculate field goal percentage: 1. Calculate FG% for all kickers with 15+ attempts 2. Rank kickers by FG% 3. What is the league average? 4. Identify the most and least accurate kickers

# Your code here

Exercise 1.2: Distance-Adjusted FG Analysis

Level 2 | Adjustment

Adjust for kick distance: 1. Calculate expected FG% based on distance 2. Calculate FG over expected for each kicker 3. Re-rank kickers by FG over expected 4. How do rankings change from raw FG%?

# Your code here

Exercise 1.3: Extra Point Analysis

Level 2 | Component

Analyze extra point performance: 1. Calculate XP% for all kickers 2. How much variation exists? 3. Calculate total points lost from missed XPs by team 4. Which teams lost most from XP misses?

# Your code here

Exercise 1.4: Clutch Kicking

Level 3 | Situational

Analyze kicking in pressure situations: 1. Define pressure: 4th quarter, within 7 points 2. Calculate FG% in pressure vs non-pressure 3. Which kickers improve under pressure? 4. Is there a clutch kicking skill?

# Your code here

Section 2: Punting Analysis (Level 2-3)

Exercise 2.1: Punter Evaluation

Level 2 | Basic Metrics

Calculate punting metrics: 1. Calculate gross and net average by punter 2. Calculate inside-20 rate 3. Calculate touchback rate 4. Rank punters by net average

# Your code here

Exercise 2.2: Situational Punting

Level 3 | Context

Analyze punting by field position: 1. Split punts by starting position 2. Calculate net average in each zone 3. Which punters excel from their own end? 4. Which excel in opponent territory?

# Your code here

Exercise 2.3: Punt Coverage

Level 3 | Unit Analysis

Analyze punt coverage by team: 1. Calculate average return yards allowed 2. Calculate fair catch rate forced 3. Calculate punt return TD rate allowed 4. Rank teams by coverage quality

# Your code here

Section 3: Return Analysis (Level 2-3)

Exercise 3.1: Kick Returner Evaluation

Level 2 | Basic

Evaluate kick returners: 1. Calculate average return yards 2. Calculate touchdowns 3. Calculate EPA per return 4. Rank returners

# Your code here

Exercise 3.2: Punt Returner Evaluation

Level 2 | Basic

Evaluate punt returners: 1. Calculate average return yards 2. Calculate fair catch rate 3. Calculate fumble rate 4. Balance risk vs reward

# Your code here

Exercise 3.3: Return Over Expected

Level 3 | Adjustment

Calculate return yards over expected: 1. Establish league average return 2. Calculate expected returns by situation 3. Calculate yards over expected 4. Re-rank returners

# Your code here

Section 4: Decision Analysis (Level 3-4)

Exercise 4.1: Field Goal Decision Value

Level 3 | Expected Value

Analyze when to attempt FGs: 1. Calculate success rate by distance 2. Calculate expected points from FG attempt 3. Compare to going for it 4. At what distances does FG become negative EV?

# Your code here

Exercise 4.2: Punt vs Go For It

Level 4 | Decision

Analyze punt decisions: 1. Calculate expected value of punting 2. Calculate expected value of going for it 3. By yardline and distance, when should teams go? 4. How often do teams make suboptimal decisions?

# Your code here

Exercise 4.3: Touchback Strategy

Level 3 | Kickoff

Analyze kickoff strategy: 1. Calculate expected starting position from touchback 2. Calculate expected starting position from returns 3. When is kicking for touchback optimal? 4. Analyze team strategies

# Your code here

Section 5: Team Evaluation (Level 4-5)

Exercise 5.1: Team Special Teams EPA

Level 4 | Composite

Calculate team special teams value: 1. Sum EPA from all ST plays by team 2. Break down by category (kicking, punting, returns) 3. Rank teams 4. Correlation with team wins?

# Your code here

Exercise 5.2: Complete ST Report

Level 5 | Capstone

Build comprehensive ST evaluation: 1. Include all kicking metrics 2. Include all punting metrics 3. Include return game 4. Include coverage 5. Generate team report

class SpecialTeamsReport:
    def __init__(self, pbp):
        pass

    def evaluate_team(self, team):
        pass

    def generate_report(self):
        pass

Section 6: Advanced Topics (Level 4-5)

Exercise 6.1: Sample Size Analysis

Level 4 | Statistics

Analyze sample size effects: 1. Calculate confidence intervals for FG% 2. How many attempts needed for stable metrics? 3. Split-half reliability analysis 4. Implications for kicker evaluation

# Your code here

Exercise 6.2: Year-to-Year Stability

Level 5 | Prediction

Test metric stability: 1. Calculate kicker metrics for 2+ years 2. Calculate year-to-year correlations 3. Which metrics persist? 4. Implications for roster decisions

# Your code here

Exercise 6.3: Environmental Effects

Level 4 | Context

Analyze weather/venue effects: 1. Compare dome vs outdoor FG% 2. Analyze cold weather effects 3. Wind effects on punting 4. How should we adjust metrics?

# Your code here

Exercise 6.4: Hidden Points Analysis

Level 5 | Value

Calculate hidden point value: 1. Field position value created by punting 2. Points prevented by coverage 3. Points generated by returns 4. Total hidden point contribution

# Your code here

Submission Guidelines

For each exercise: 1. Include all code with comments 2. Provide visualizations where appropriate 3. Interpret findings with sample size caveats 4. Acknowledge ST evaluation limitations

Grading Rubric

Level Points Focus
1 2 each Correct calculation
2 3 each Calculation + interpretation
3 4 each Expected value analysis
4 5 each Decision and context
5 6 each Comprehensive evaluation