Overview
The tif1 library provides a simple, intuitive API for accessing Formula 1 data. This guide covers the fundamental data access patterns you’ll use in most analyses.Getting Events
Before accessing session data, you need to know which events are available:Get Event by Round Number
Access specific events using their round number:Get Event by Name (Fuzzy Match)
The library supports fuzzy matching for event names, making it easy to find events:Getting Sessions
Once you have an event, check available sessions:Loading Session Data
Get a session object to access all session data:drivers_df DataFrame contains:
Driver: 3-letter driver code (e.g., “VER”, “HAM”)Team: Team nameDriverNumber: Driver’s racing numberFullName: Driver’s full name
Getting Laps
Access lap data for all drivers or specific drivers:Lap Data Columns
The laps DataFrame includes:LapTime: Lap time in secondsLapNumber: Lap numberCompound: Tire compound (SOFT, MEDIUM, HARD, INTERMEDIATE, WET)Stint: Stint numberSector1Time,Sector2Time,Sector3Time: Sector times in secondsTyreLife: Tire age in lapsPosition: Track positionTrackStatus: Track status (1=clear, 2=yellow, 4=SC, 5=red, 6=VSC)IsPersonalBest: Personal best lap flagDriver: Driver codeTeam: Team name
Getting Driver-Specific Data
Access data for individual drivers:Filtering Laps
Filter laps based on various criteria:Getting Telemetry
Access detailed telemetry data for specific laps:Telemetry Data Columns
Telemetry DataFrame includes:Time: Time in seconds from lap startRPM: Engine RPMSpeed: Speed in km/hnGear: Gear number (0-8)Throttle: Throttle position (0-100%)Brake: Brake status (0=off, 1=on)DRS: DRS status (0=off, 1=on)Distance: Distance in meters from start lineRelativeDistance: Relative distance (0-1 normalized)X,Y,Z: Position coordinatesAccelerationX: Lateral acceleration (m/s²)AccelerationY: Longitudinal acceleration (m/s²)AccelerationZ: Vertical acceleration (m/s²)
Complete Example
Here’s a complete workflow for accessing and analyzing data:Next Steps
- Learn about fastest laps analysis
- Explore telemetry analysis techniques
- Optimize performance with caching