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:
- What is the difference between a list and a dictionary?
- How do you iterate over items in a list?
- What does
defdo in Python? - How do you check if a value equals something else?
- 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.
Recommended Python Resources
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:
- A team's point differentials for five games are: +14, -3, +7, +21, -10. What is the mean? What is the median?
- If a quarterback completes 65% of his passes, what's the probability of an incomplete pass?
- If two variables have a correlation of -0.8, what does this tell you about their relationship?
- Why doesn't a correlation of 0.9 between ice cream sales and drowning deaths mean ice cream causes drowning?
- 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.
Recommended Statistics Resources
- 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
- How many points is a touchdown worth (before the extra point)?
- What happens after a team fails to gain 10 yards in four downs?
- What is an interception?
- Name two offensive positions and two defensive positions.
- 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.
Recommended Football Resources
- 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:
-
Python 3.9 or later - Download from python.org - During installation, check "Add Python to PATH"
-
A Code Editor (choose one) - VS Code (free, recommended): code.visualstudio.com - PyCharm Community (free): jetbrains.com/pycharm - Jupyter Lab (free): jupyter.org
-
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
- Week 1: Complete Python basics (variables, control flow, functions)
- Week 2: Practice with lists, dictionaries, and file I/O
2-Week Statistics Preparation
- Week 1: Descriptive statistics (mean, median, standard deviation)
- 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."