Skip to main content
The circuits.csv table contains information about each circuit where Formula 1 races have been held from 1950 to present.

Schema

FieldTypeDescription
circuitIdintegerUnique identifier for each circuit
circuitRefstringShort reference name for the circuit (URL-friendly)
namestringOfficial name of the circuit
locationstringCity where the circuit is located
countrystringCountry where the circuit is located
latfloatLatitude coordinate of the circuit
lngfloatLongitude coordinate of the circuit
altintegerAltitude of the circuit in meters
urlstringWikipedia URL for the circuit

Sample Data

circuitIdcircuitRefnamelocationcountrylatlngalt
1albert_parkAlbert Park Grand Prix CircuitMelbourneAustralia-37.8497144.96810
2sepangSepang International CircuitKuala LumpurMalaysia2.76083101.73818
3bahrainBahrain International CircuitSakhirBahrain26.032550.51067
4catalunyaCircuit de Barcelona-CatalunyaMontmelóSpain41.572.26111109

Relationships

Referenced by:
  • races.circuitIdcircuits.circuitId

Dataset Statistics

  • Total Records: 78 circuits
  • Date Range: 1950 - Present
  • Geographic Coverage: Worldwide

Example Queries

Find circuits by country

import pandas as pd

circuits = pd.read_csv('circuits.csv')
italian_circuits = circuits[circuits['country'] == 'Italy']
print(italian_circuits[['name', 'location']])

Get highest altitude circuits

high_altitude = circuits.nlargest(5, 'alt')
print(high_altitude[['name', 'location', 'alt']])

Calculate circuit locations map data

map_data = circuits[['name', 'lat', 'lng', 'country']]
# Use with mapping libraries like folium or plotly

Notes

  • Coordinates are provided in decimal degrees format
  • Altitude values may be \N for older circuits where data is unavailable
  • Some circuits have hosted races under different names over the years
  • The circuitRef field is useful for creating URL-friendly identifiers

Build docs developers (and LLMs) love