User Guide

Welcome to the LiveF1 User Guide! This guide will help you understand how to effectively use the LiveF1 package for accessing and analyzing Formula 1 timing data. Whether you’re interested in real-time race analytics or historical data analysis, this guide will walk you through the essential concepts and features.

Understanding Formula 1 Data

Formula 1 live timing data provides comprehensive insights into the performance of drivers, teams, and cars during races. This data is critical for real-time analytics, historical analysis, and developing strategies for races.

The live timing API follows a structured format to ensure efficient data access. Each API address corresponds to a specific endpoint, which streams or delivers data for various aspects of Formula 1 sessions. These endpoints can be accessed via HTTP requests.

See also

For detailed information about the F1 timing data structure and available endpoints, see Formula 1 LiveTiming Data.

The LiveF1 package organizes this data using the Medallion Architecture, which structures data into Bronze (raw), Silver (cleaned), and Gold (analytics-ready) layers.

Core Concepts

Before diving into specific features, it’s important to understand these key concepts:

  1. Data Organization - Seasons contain multiple race meetings - Meetings contain multiple sessions (Practice, Qualifying, Race) - Sessions contain various data feeds (telemetry, timing, weather, etc.)

  2. Data Access Patterns - Historical data access for past races - Real-time data streaming for live sessions - Data transformation through the medallion architecture

  3. Data Types Each session provides multiple data feeds, organized by topics like car telemetry, position data, and timing information.

Tip

Browse available data topics and their descriptions in LiveTiming Data Topics.

Getting Started with Data

The package provides three main functions for accessing F1 data:

  1. Season: Access an entire F1 season

  2. Meeting: Access a specific race meeting

  3. Session: Access a specific session

Once you have a session object, you can:

  • Load raw data using get_data()

  • Generate processed tables using generate()

  • Access specific data types through helper methods like get_laps(), get_car_telemetry(), etc.

Examples and Use Cases

  • historical_data: Learn how to analyze past race data

  • realtime_data: Learn how to work with live session data

  • quick_start: Quick examples to get started

Where to Go Next