Prerequisites


This textbook assumes foundational knowledge in three areas: Python programming, statistics, and football. This chapter helps you assess your readiness and provides resources to fill any gaps.


Python Programming

Required Knowledge

You should be comfortable with the following Python concepts:

Variables and Data Types

# You should understand this code
name = "Ohio State"
wins = 11
win_percentage = 0.846
is_playoff_team = True

Lists and Dictionaries

# Creating and accessing collections
teams = ["Alabama", "Georgia", "Michigan", "Texas"]
team_info = {"name": "Alabama", "conference": "SEC", "wins": 12}
print(teams[0])  # "Alabama"
print(team_info["conference"])  # "SEC"

Control Flow

# Conditionals and loops
for team in teams:
    if team == "Georgia":
        print("Go Dawgs!")
    else:
        print(f"{team} is also good")

Functions

# Defining and calling functions
def calculate_win_pct(wins, losses):
    """Calculate winning percentage."""
    total_games = wins + losses
    return wins / total_games if total_games > 0 else 0

pct = calculate_win_pct(11, 2)
print(f"Win percentage: {pct:.3f}")

Basic File Operations

# Reading files
with open("data.txt", "r") as f:
    content = f.read()

Nice to Have (But Taught in Chapter 3)

The following will be covered in Chapter 3, but prior exposure helps:

  • pandas DataFrames
  • NumPy arrays
  • matplotlib plotting
  • List comprehensions
  • Lambda functions

Self-Assessment: Python

Answer these questions without looking up the answers:

  1. What is the difference between a list and a dictionary?
  2. How do you iterate over items in a list?
  3. What does def do in Python?
  4. How do you check if a value equals something else?
  5. What is a return statement?

Scoring: If you can answer 4-5 confidently, you're ready. 2-3 correct means you should review Python basics alongside Chapter 3. 0-1 correct suggests completing a Python introduction course first.

If you need to strengthen your Python:

  • Automate the Boring Stuff with Python (free online): Practical introduction
  • Python for Everybody (Coursera): Comprehensive beginner course
  • Real Python (website): Tutorials on specific topics
  • Official Python Tutorial: docs.python.org/3/tutorial/

Statistics

Required Knowledge

You should understand these statistical concepts:

Measures of Central Tendency - Mean: Average of values ($\bar{x} = \frac{\sum x_i}{n}$) - Median: Middle value when sorted - Mode: Most frequent value

Example: For passing yards [245, 312, 198, 287, 301]: - Mean = 268.6 yards - Median = 287 yards

Measures of Spread - Range: Maximum minus minimum - Variance: Average squared deviation from mean - Standard Deviation: Square root of variance

Basic Probability - Probability as long-run frequency - Probability rules (0 ≤ P(A) ≤ 1) - Complement rule: P(not A) = 1 - P(A) - Understanding of independent vs. dependent events

Correlation - Correlation measures linear relationship strength - Range: -1 to +1 - Positive correlation: both variables move together - Negative correlation: variables move oppositely - Correlation does not imply causation

Distributions - Understanding that data has a "shape" - Familiarity with the normal distribution concept - Awareness that not all data is normally distributed

Nice to Have (But Taught as Needed)

These concepts will be introduced when needed:

  • Hypothesis testing
  • Confidence intervals
  • Regression analysis
  • Bayesian concepts

Self-Assessment: Statistics

Answer these questions:

  1. A team's point differentials for five games are: +14, -3, +7, +21, -10. What is the mean? What is the median?
  2. If a quarterback completes 65% of his passes, what's the probability of an incomplete pass?
  3. If two variables have a correlation of -0.8, what does this tell you about their relationship?
  4. Why doesn't a correlation of 0.9 between ice cream sales and drowning deaths mean ice cream causes drowning?
  5. What does "standard deviation" measure?

Scoring: 4-5 correct: you're ready. 2-3 correct: review statistics basics. 0-1 correct: complete an introductory statistics course or textbook first.

  • OpenIntro Statistics (free PDF): Solid introduction
  • Khan Academy Statistics: Video-based learning
  • Statistics in Plain English (Urdan): Approachable textbook
  • Naked Statistics (Wheelan): Engaging conceptual introduction

Football Knowledge

Required Knowledge

You should understand basic football concepts:

Game Structure - Four quarters, 15 minutes each - Four downs to gain 10 yards - Scoring: touchdown (6), PAT (1 or 2), field goal (3), safety (2) - Two halves, halftime in between

Basic Positions - Offense: Quarterback, running back, wide receiver, offensive line - Defense: Defensive line, linebacker, cornerback, safety - Special Teams: Kicker, punter, returner

Basic Plays - Pass plays vs. run plays - First down, second down, third down situations - Punting situations - Field goal situations

Basic Statistics - Passing yards, completions, attempts - Rushing yards, carries - Touchdowns, interceptions - Team wins and losses

Nice to Have

Deeper football knowledge helps but isn't required:

  • Offensive and defensive formations
  • Route trees and coverage schemes
  • Recruiting rankings and processes
  • Conference structures and playoff format
  • Historical context and rivalries

Self-Assessment: Football

  1. How many points is a touchdown worth (before the extra point)?
  2. What happens after a team fails to gain 10 yards in four downs?
  3. What is an interception?
  4. Name two offensive positions and two defensive positions.
  5. What is the difference between a punt and a field goal attempt?

Scoring: 5 correct: you're ready. 3-4 correct: you'll learn as you go. 0-2 correct: watch some games and read introductory football content.

  • Take Your Eye Off the Ball (Kirwan): How to watch football
  • ESPN College Football Encyclopedia: Historical reference
  • YouTube: Search "football basics explained"
  • Watch games: Nothing beats observing the sport in action

Technical Requirements

Hardware

  • Computer: Windows 10+, macOS 10.14+, or Linux
  • RAM: 8GB minimum, 16GB recommended
  • Storage: 5GB free space for software and data
  • Internet: Required for data downloads and API access

Software

Before starting Chapter 1, install:

  1. Python 3.9 or later - Download from python.org - During installation, check "Add Python to PATH"

  2. A Code Editor (choose one) - VS Code (free, recommended): code.visualstudio.com - PyCharm Community (free): jetbrains.com/pycharm - Jupyter Lab (free): jupyter.org

  3. Git (optional but recommended) - Download from git-scm.com - Useful for version control and downloading code

Verification

Open a terminal/command prompt and verify:

# Check Python version (should be 3.9+)
python --version

# Check pip is available
pip --version

If both commands work, you're ready for the technical setup in Chapter 1.


If You're Not Ready

Don't be discouraged if you need to build prerequisites first. Consider this learning path:

2-Week Python Preparation

  1. Week 1: Complete Python basics (variables, control flow, functions)
  2. Week 2: Practice with lists, dictionaries, and file I/O

2-Week Statistics Preparation

  1. Week 1: Descriptive statistics (mean, median, standard deviation)
  2. Week 2: Basic probability and correlation

Ongoing Football Learning

  • Watch 2-3 college football games
  • Follow along with game commentary
  • Read game recaps noting statistics discussed

Then Return

With these foundations solid, you'll be well-prepared to succeed with this textbook. The investment in prerequisites pays dividends throughout.


Ready to Begin?

If you've confirmed: - ✅ Python basics understood - ✅ Statistical fundamentals familiar - ✅ Football concepts recognized - ✅ Software installed

Then turn to Chapter 1: Introduction to College Football Analytics and begin your journey into the data-driven side of college football.


"The best time to start learning was yesterday. The second best time is now."