{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Formula One Project: Modeling\n", "\n", "DUE: December 4th, 2024 (Wed) \n", "Name(s): Sean O'Connor, Connor Coles \n", "Class: CSCI 349 - Intro to Data Mining \n", "Semester: Fall 2024 \n", "Instructor: Brian King " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Assignment Description\n", "\n", "Copy over the important cells from the previous step that read in and cleaned your data to this new notebook file. You do not need to copy over all your EDA and plots describing your data, only the code that prepares your data for modeling. This notebook is about exploring the development of predictive models. Some initial preliminary work on applying some modeling techniques should be completed.\n", "Be sure to commit and push all supporting code that you've completed in this file. Include in this notebook a summary cell at the top that details your accomplishments, challenges, and what you expect to accomplish for your final steps. Be sure to update your readme.md in your repository.\n", "\n", "## Progress Summary\n", "\n", "### Accomplishments So Far\n", "- Successfully loaded and preprocessed Formula 1 race data from 2021-2024\n", "- Created comprehensive feature engineering pipeline including weather and track conditions\n", "- Implemented initial modeling with Random Forest, XGBoost, and Gradient Boosting\n", "- Achieved best performance on Belgian GP (R² = 0.775) and Mexico City GP (R² = 0.505)\n", "\n", "### Challenges Faced\n", "- High variability in model performance across different tracks\n", "- British GP proving particularly difficult to predict (best R² = 0.047)\n", "- Complex interactions between weather variables and lap times\n", "- Limited data availability for some races/conditions\n", "\n", "### Next Steps\n", "- Implement hyperparameter tuning using GridSearchCV\n", "- Explore additional feature engineering possibilities\n", "- Test neural network approaches for complex weather-performance relationships\n", "- Create ensemble model combining best performers for each track\n", "- Prepare final visualizations and analysis for report\n", "\n", "## Data Preparation and Feature Engineering" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# Importing Libraries\n", "import logging\n", "import os\n", "import warnings\n", "\n", "import fastf1\n", "import fastf1.plotting\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import pandas as pd\n", "import seaborn as sns\n", "import xgboost as xgb\n", "from catboost import CatBoostRegressor\n", "from fastf1.ergast.structure import FastestLap\n", "from lightgbm import LGBMRegressor\n", "from sklearn.compose import ColumnTransformer\n", "from sklearn.ensemble import GradientBoostingRegressor, RandomForestRegressor\n", "from sklearn.impute import SimpleImputer\n", "from sklearn.linear_model import Lasso, LinearRegression, Ridge\n", "from sklearn.metrics import (make_scorer, mean_absolute_error,\n", " mean_squared_error, r2_score)\n", "from sklearn.model_selection import (cross_val_score, cross_validate,\n", " train_test_split)\n", "from sklearn.pipeline import Pipeline, make_pipeline\n", "from sklearn.preprocessing import StandardScaler\n", "from sklearn.svm import SVR\n", "from sklearn.tree import DecisionTreeRegressor\n", "from xgboost import XGBRegressor" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " RoundNumber Country Location \\\n", "0 0 Bahrain Bahrain \n", "1 1 Bahrain Sakhir \n", "2 2 Italy Imola \n", "3 3 Portugal Portimão \n", "4 4 Spain Barcelona \n", "5 5 Monaco Monte Carlo \n", "6 6 Azerbaijan Baku \n", "7 7 France Le Castellet \n", "8 8 Austria Spielberg \n", "9 9 Austria Spielberg \n", "10 10 Great Britain Silverstone \n", "11 11 Hungary Budapest \n", "12 12 Belgium Spa-Francorchamps \n", "13 13 Netherlands Zandvoort \n", "14 14 Italy Monza \n", "15 15 Russia Sochi \n", "16 16 Turkey Istanbul \n", "17 17 United States Austin \n", "18 18 Mexico Mexico City \n", "19 19 Brazil São Paulo \n", "20 20 Qatar Lusail \n", "21 21 Saudi Arabia Jeddah \n", "22 22 Abu Dhabi Yas Island \n", "\n", " OfficialEventName EventDate \\\n", "0 FORMULA 1 ARAMCO PRE-SEASON TESTING 2021 2021-03-14 \n", "1 FORMULA 1 GULF AIR BAHRAIN GRAND PRIX 2021 2021-03-28 \n", "2 FORMULA 1 PIRELLI GRAN PREMIO DEL MADE IN ITAL... 2021-04-18 \n", "3 FORMULA 1 HEINEKEN GRANDE PRÉMIO DE PORTUGAL 2021 2021-05-02 \n", "4 FORMULA 1 ARAMCO GRAN PREMIO DE ESPAÑA 2021 2021-05-09 \n", "5 FORMULA 1 GRAND PRIX DE MONACO 2021 2021-05-23 \n", "6 FORMULA 1 AZERBAIJAN GRAND PRIX 2021 2021-06-06 \n", "7 FORMULA 1 EMIRATES GRAND PRIX DE FRANCE 2021 2021-06-20 \n", "8 FORMULA 1 BWT GROSSER PREIS DER STEIERMARK 2021 2021-06-27 \n", "9 FORMULA 1 BWT GROSSER PREIS VON ÖSTERREICH 2021 2021-07-04 \n", "10 FORMULA 1 PIRELLI BRITISH GRAND PRIX 2021 2021-07-18 \n", "11 FORMULA 1 ROLEX MAGYAR NAGYDÍJ 2021 2021-08-01 \n", "12 FORMULA 1 ROLEX BELGIAN GRAND PRIX 2021 2021-08-29 \n", "13 FORMULA 1 HEINEKEN DUTCH GRAND PRIX 2021 2021-09-05 \n", "14 FORMULA 1 HEINEKEN GRAN PREMIO D’ITALIA 2021 2021-09-12 \n", "15 FORMULA 1 VTB RUSSIAN GRAND PRIX 2021 2021-09-26 \n", "16 FORMULA 1 ROLEX TURKISH GRAND PRIX 2021 2021-10-10 \n", "17 FORMULA 1 ARAMCO UNITED STATES GRAND PRIX 2021 2021-10-24 \n", "18 FORMULA 1 GRAN PREMIO DE LA CIUDAD DE MÉXICO 2021 2021-11-07 \n", "19 FORMULA 1 HEINEKEN GRANDE PRÊMIO DE SÃO PAULO ... 2021-11-14 \n", "20 FORMULA 1 OOREDOO QATAR GRAND PRIX 2021 2021-11-21 \n", "21 FORMULA 1 STC SAUDI ARABIAN GRAND PRIX 2021 2021-12-05 \n", "22 FORMULA 1 ETIHAD AIRWAYS ABU DHABI GRAND PRIX ... 2021-12-12 \n", "\n", " EventName EventFormat Session1 \\\n", "0 Pre-Season Test testing Practice 1 \n", "1 Bahrain Grand Prix conventional Practice 1 \n", "2 Emilia Romagna Grand Prix conventional Practice 1 \n", "3 Portuguese Grand Prix conventional Practice 1 \n", "4 Spanish Grand Prix conventional Practice 1 \n", "5 Monaco Grand Prix conventional Practice 1 \n", "6 Azerbaijan Grand Prix conventional Practice 1 \n", "7 French Grand Prix conventional Practice 1 \n", "8 Styrian Grand Prix conventional Practice 1 \n", "9 Austrian Grand Prix conventional Practice 1 \n", "10 British Grand Prix sprint Practice 1 \n", "11 Hungarian Grand Prix conventional Practice 1 \n", "12 Belgian Grand Prix conventional Practice 1 \n", "13 Dutch Grand Prix conventional Practice 1 \n", "14 Italian Grand Prix sprint Practice 1 \n", "15 Russian Grand Prix conventional Practice 1 \n", "16 Turkish Grand Prix conventional Practice 1 \n", "17 United States Grand Prix conventional Practice 1 \n", "18 Mexico City Grand Prix conventional Practice 1 \n", "19 São Paulo Grand Prix sprint Practice 1 \n", "20 Qatar Grand Prix conventional Practice 1 \n", "21 Saudi Arabian Grand Prix conventional Practice 1 \n", "22 Abu Dhabi Grand Prix conventional Practice 1 \n", "\n", " Session1Date Session1DateUtc ... Session3 \\\n", "0 2021-03-12 10:00:00+03:00 2021-03-12 07:00:00 ... Practice 3 \n", "1 2021-03-26 14:30:00+03:00 2021-03-26 11:30:00 ... Practice 3 \n", "2 2021-04-16 11:00:00+02:00 2021-04-16 09:00:00 ... Practice 3 \n", "3 2021-04-30 11:30:00+01:00 2021-04-30 10:30:00 ... Practice 3 \n", "4 2021-05-07 11:30:00+02:00 2021-05-07 09:30:00 ... Practice 3 \n", "5 2021-05-20 11:30:00+02:00 2021-05-20 09:30:00 ... Practice 3 \n", "6 2021-06-04 12:30:00+04:00 2021-06-04 08:30:00 ... Practice 3 \n", "7 2021-06-18 11:30:00+02:00 2021-06-18 09:30:00 ... Practice 3 \n", "8 2021-06-25 11:30:00+02:00 2021-06-25 09:30:00 ... Practice 3 \n", "9 2021-07-02 11:30:00+02:00 2021-07-02 09:30:00 ... Practice 3 \n", "10 2021-07-16 14:30:00+01:00 2021-07-16 13:30:00 ... Practice 2 \n", "11 2021-07-30 11:30:00+02:00 2021-07-30 09:30:00 ... Practice 3 \n", "12 2021-08-27 11:30:00+02:00 2021-08-27 09:30:00 ... Practice 3 \n", "13 2021-09-03 11:30:00+02:00 2021-09-03 09:30:00 ... Practice 3 \n", "14 2021-09-10 14:30:00+02:00 2021-09-10 12:30:00 ... Practice 2 \n", "15 2021-09-24 11:30:00+03:00 2021-09-24 08:30:00 ... Practice 3 \n", "16 2021-10-08 11:30:00+03:00 2021-10-08 08:30:00 ... Practice 3 \n", "17 2021-10-22 11:30:00-05:00 2021-10-22 16:30:00 ... Practice 3 \n", "18 2021-11-05 11:30:00-06:00 2021-11-05 17:30:00 ... Practice 3 \n", "19 2021-11-12 12:30:00-03:00 2021-11-12 15:30:00 ... Practice 2 \n", "20 2021-11-19 13:30:00+03:00 2021-11-19 10:30:00 ... Practice 3 \n", "21 2021-12-03 16:30:00+03:00 2021-12-03 13:30:00 ... Practice 3 \n", "22 2021-12-10 13:30:00+04:00 2021-12-10 09:30:00 ... Practice 3 \n", "\n", " Session3Date Session3DateUtc Session4 \\\n", "0 2021-03-14 10:00:00+03:00 2021-03-14 07:00:00 None \n", "1 2021-03-27 15:00:00+03:00 2021-03-27 12:00:00 Qualifying \n", "2 2021-04-17 11:00:00+02:00 2021-04-17 09:00:00 Qualifying \n", "3 2021-05-01 12:00:00+01:00 2021-05-01 11:00:00 Qualifying \n", "4 2021-05-08 12:00:00+02:00 2021-05-08 10:00:00 Qualifying \n", "5 2021-05-22 12:00:00+02:00 2021-05-22 10:00:00 Qualifying \n", "6 2021-06-05 13:00:00+04:00 2021-06-05 09:00:00 Qualifying \n", "7 2021-06-19 12:00:00+02:00 2021-06-19 10:00:00 Qualifying \n", "8 2021-06-26 12:00:00+02:00 2021-06-26 10:00:00 Qualifying \n", "9 2021-07-03 12:00:00+02:00 2021-07-03 10:00:00 Qualifying \n", "10 2021-07-17 12:00:00+01:00 2021-07-17 11:00:00 Sprint \n", "11 2021-07-31 12:00:00+02:00 2021-07-31 10:00:00 Qualifying \n", "12 2021-08-28 12:00:00+02:00 2021-08-28 10:00:00 Qualifying \n", "13 2021-09-04 12:00:00+02:00 2021-09-04 10:00:00 Qualifying \n", "14 2021-09-11 12:00:00+02:00 2021-09-11 10:00:00 Sprint \n", "15 2021-09-25 12:00:00+03:00 2021-09-25 09:00:00 Qualifying \n", "16 2021-10-09 12:00:00+03:00 2021-10-09 09:00:00 Qualifying \n", "17 2021-10-23 13:00:00-05:00 2021-10-23 18:00:00 Qualifying \n", "18 2021-11-06 11:00:00-06:00 2021-11-06 17:00:00 Qualifying \n", "19 2021-11-13 12:00:00-03:00 2021-11-13 15:00:00 Sprint \n", "20 2021-11-20 14:00:00+03:00 2021-11-20 11:00:00 Qualifying \n", "21 2021-12-04 17:00:00+03:00 2021-12-04 14:00:00 Qualifying \n", "22 2021-12-11 14:00:00+04:00 2021-12-11 10:00:00 Qualifying \n", "\n", " Session4Date Session4DateUtc Session5 \\\n", "0 NaT NaT None \n", "1 2021-03-27 18:00:00+03:00 2021-03-27 15:00:00 Race \n", "2 2021-04-17 14:00:00+02:00 2021-04-17 12:00:00 Race \n", "3 2021-05-01 15:00:00+01:00 2021-05-01 14:00:00 Race \n", "4 2021-05-08 15:00:00+02:00 2021-05-08 13:00:00 Race \n", "5 2021-05-22 15:00:00+02:00 2021-05-22 13:00:00 Race \n", "6 2021-06-05 16:00:00+04:00 2021-06-05 12:00:00 Race \n", "7 2021-06-19 15:00:00+02:00 2021-06-19 13:00:00 Race \n", "8 2021-06-26 15:00:00+02:00 2021-06-26 13:00:00 Race \n", "9 2021-07-03 15:00:00+02:00 2021-07-03 13:00:00 Race \n", "10 2021-07-17 16:30:00+01:00 2021-07-17 15:30:00 Race \n", "11 2021-07-31 15:00:00+02:00 2021-07-31 13:00:00 Race \n", "12 2021-08-28 15:00:00+02:00 2021-08-28 13:00:00 Race \n", "13 2021-09-04 15:00:00+02:00 2021-09-04 13:00:00 Race \n", "14 2021-09-11 16:30:00+02:00 2021-09-11 14:30:00 Race \n", "15 2021-09-25 15:00:00+03:00 2021-09-25 12:00:00 Race \n", "16 2021-10-09 15:00:00+03:00 2021-10-09 12:00:00 Race \n", "17 2021-10-23 16:00:00-05:00 2021-10-23 21:00:00 Race \n", "18 2021-11-06 14:00:00-06:00 2021-11-06 20:00:00 Race \n", "19 2021-11-13 16:30:00-03:00 2021-11-13 19:30:00 Race \n", "20 2021-11-20 17:00:00+03:00 2021-11-20 14:00:00 Race \n", "21 2021-12-04 20:00:00+03:00 2021-12-04 17:00:00 Race \n", "22 2021-12-11 17:00:00+04:00 2021-12-11 13:00:00 Race \n", "\n", " Session5Date Session5DateUtc F1ApiSupport \n", "0 NaT NaT False \n", "1 2021-03-28 18:00:00+03:00 2021-03-28 15:00:00 True \n", "2 2021-04-18 15:00:00+02:00 2021-04-18 13:00:00 True \n", "3 2021-05-02 15:00:00+01:00 2021-05-02 14:00:00 True \n", "4 2021-05-09 15:00:00+02:00 2021-05-09 13:00:00 True \n", "5 2021-05-23 15:00:00+02:00 2021-05-23 13:00:00 True \n", "6 2021-06-06 16:00:00+04:00 2021-06-06 12:00:00 True \n", "7 2021-06-20 15:00:00+02:00 2021-06-20 13:00:00 True \n", "8 2021-06-27 15:00:00+02:00 2021-06-27 13:00:00 True \n", "9 2021-07-04 15:00:00+02:00 2021-07-04 13:00:00 True \n", "10 2021-07-18 15:00:00+01:00 2021-07-18 14:00:00 True \n", "11 2021-08-01 15:00:00+02:00 2021-08-01 13:00:00 True \n", "12 2021-08-29 15:00:00+02:00 2021-08-29 13:00:00 True \n", "13 2021-09-05 15:00:00+02:00 2021-09-05 13:00:00 True \n", "14 2021-09-12 15:00:00+02:00 2021-09-12 13:00:00 True \n", "15 2021-09-26 15:00:00+03:00 2021-09-26 12:00:00 True \n", "16 2021-10-10 15:00:00+03:00 2021-10-10 12:00:00 True \n", "17 2021-10-24 14:00:00-05:00 2021-10-24 19:00:00 True \n", "18 2021-11-07 13:00:00-06:00 2021-11-07 19:00:00 True \n", "19 2021-11-14 14:00:00-03:00 2021-11-14 17:00:00 True \n", "20 2021-11-21 17:00:00+03:00 2021-11-21 14:00:00 True \n", "21 2021-12-05 20:30:00+03:00 2021-12-05 17:30:00 True \n", "22 2021-12-12 17:00:00+04:00 2021-12-12 13:00:00 True \n", "\n", "[23 rows x 23 columns]\n", " RoundNumber Country Location \\\n", "0 0 Spain Spain \n", "1 0 Bahrain Bahrain \n", "2 1 Bahrain Sakhir \n", "3 2 Saudi Arabia Jeddah \n", "4 3 Australia Melbourne \n", "5 4 Italy Imola \n", "6 5 United States Miami \n", "7 6 Spain Barcelona \n", "8 7 Monaco Monaco \n", "9 8 Azerbaijan Baku \n", "10 9 Canada Montréal \n", "11 10 Great Britain Silverstone \n", "12 11 Austria Spielberg \n", "13 12 France Le Castellet \n", "14 13 Hungary Budapest \n", "15 14 Belgium Spa-Francorchamps \n", "16 15 Netherlands Zandvoort \n", "17 16 Italy Monza \n", "18 17 Singapore Marina Bay \n", "19 18 Japan Suzuka \n", "20 19 United States Austin \n", "21 20 Mexico Mexico City \n", "22 21 Brazil São Paulo \n", "23 22 Abu Dhabi Yas Island \n", "\n", " OfficialEventName EventDate \\\n", "0 FORMULA 1 PRE-SEASON TRACK SESSION 2022 2022-02-25 \n", "1 FORMULA 1 ARAMCO PRE-SEASON TESTING 2022 2022-03-12 \n", "2 FORMULA 1 GULF AIR BAHRAIN GRAND PRIX 2022 2022-03-20 \n", "3 FORMULA 1 STC SAUDI ARABIAN GRAND PRIX 2022 2022-03-27 \n", "4 FORMULA 1 HEINEKEN AUSTRALIAN GRAND PRIX 2022 2022-04-10 \n", "5 FORMULA 1 ROLEX GRAN PREMIO DEL MADE IN ITALY ... 2022-04-24 \n", "6 FORMULA 1 CRYPTO.COM MIAMI GRAND PRIX 2022 2022-05-08 \n", "7 FORMULA 1 PIRELLI GRAN PREMIO DE ESPAÑA 2022 2022-05-22 \n", "8 FORMULA 1 GRAND PRIX DE MONACO 2022 2022-05-29 \n", "9 FORMULA 1 AZERBAIJAN GRAND PRIX 2022 2022-06-12 \n", "10 FORMULA 1 AWS GRAND PRIX DU CANADA 2022 2022-06-19 \n", "11 FORMULA 1 LENOVO BRITISH GRAND PRIX 2022 2022-07-03 \n", "12 FORMULA 1 ROLEX GROSSER PREIS VON ÖSTERREICH 2022 2022-07-10 \n", "13 FORMULA 1 LENOVO GRAND PRIX DE FRANCE 2022 2022-07-24 \n", "14 FORMULA 1 ARAMCO MAGYAR NAGYDÍJ 2022 2022-07-31 \n", "15 FORMULA 1 ROLEX BELGIAN GRAND PRIX 2022 2022-08-28 \n", "16 FORMULA 1 HEINEKEN DUTCH GRAND PRIX 2022 2022-09-04 \n", "17 FORMULA 1 PIRELLI GRAN PREMIO D’ITALIA 2022 2022-09-11 \n", "18 FORMULA 1 SINGAPORE AIRLINES SINGAPORE GRAND P... 2022-10-02 \n", "19 FORMULA 1 HONDA JAPANESE GRAND PRIX 2022 2022-10-09 \n", "20 FORMULA 1 ARAMCO UNITED STATES GRAND PRIX 2022 2022-10-23 \n", "21 FORMULA 1 HEINEKEN GRAN PREMIO DE LA CIUDAD DE... 2022-10-30 \n", "22 FORMULA 1 HEINEKEN GRANDE PRÊMIO DE SÃO PAULO ... 2022-11-13 \n", "23 FORMULA 1 ETIHAD AIRWAYS ABU DHABI GRAND PRIX ... 2022-11-20 \n", "\n", " EventName EventFormat Session1 \\\n", "0 Pre-Season Track Session testing Practice 1 \n", "1 Pre-Season Test testing Practice 1 \n", "2 Bahrain Grand Prix conventional Practice 1 \n", "3 Saudi Arabian Grand Prix conventional Practice 1 \n", "4 Australian Grand Prix conventional Practice 1 \n", "5 Emilia Romagna Grand Prix sprint Practice 1 \n", "6 Miami Grand Prix conventional Practice 1 \n", "7 Spanish Grand Prix conventional Practice 1 \n", "8 Monaco Grand Prix conventional Practice 1 \n", "9 Azerbaijan Grand Prix conventional Practice 1 \n", "10 Canadian Grand Prix conventional Practice 1 \n", "11 British Grand Prix conventional Practice 1 \n", "12 Austrian Grand Prix sprint Practice 1 \n", "13 French Grand Prix conventional Practice 1 \n", "14 Hungarian Grand Prix conventional Practice 1 \n", "15 Belgian Grand Prix conventional Practice 1 \n", "16 Dutch Grand Prix conventional Practice 1 \n", "17 Italian Grand Prix conventional Practice 1 \n", "18 Singapore Grand Prix conventional Practice 1 \n", "19 Japanese Grand Prix conventional Practice 1 \n", "20 United States Grand Prix conventional Practice 1 \n", "21 Mexico City Grand Prix conventional Practice 1 \n", "22 São Paulo Grand Prix sprint Practice 1 \n", "23 Abu Dhabi Grand Prix conventional Practice 1 \n", "\n", " Session1Date Session1DateUtc ... Session3 \\\n", "0 2022-02-23 09:00:00+01:00 2022-02-23 08:00:00 ... Practice 3 \n", "1 2022-03-10 10:00:00+03:00 2022-03-10 07:00:00 ... Practice 3 \n", "2 2022-03-18 15:00:00+03:00 2022-03-18 12:00:00 ... Practice 3 \n", "3 2022-03-25 17:00:00+03:00 2022-03-25 14:00:00 ... Practice 3 \n", "4 2022-04-08 13:00:00+10:00 2022-04-08 03:00:00 ... Practice 3 \n", "5 2022-04-22 13:30:00+02:00 2022-04-22 11:30:00 ... Practice 2 \n", "6 2022-05-06 14:30:00-04:00 2022-05-06 18:30:00 ... Practice 3 \n", "7 2022-05-20 14:00:00+02:00 2022-05-20 12:00:00 ... Practice 3 \n", "8 2022-05-27 14:00:00+02:00 2022-05-27 12:00:00 ... Practice 3 \n", "9 2022-06-10 15:00:00+04:00 2022-06-10 11:00:00 ... Practice 3 \n", "10 2022-06-17 14:00:00-04:00 2022-06-17 18:00:00 ... Practice 3 \n", "11 2022-07-01 13:00:00+01:00 2022-07-01 12:00:00 ... Practice 3 \n", "12 2022-07-08 13:30:00+02:00 2022-07-08 11:30:00 ... Practice 2 \n", "13 2022-07-22 14:00:00+02:00 2022-07-22 12:00:00 ... Practice 3 \n", "14 2022-07-29 14:00:00+02:00 2022-07-29 12:00:00 ... Practice 3 \n", "15 2022-08-26 14:00:00+02:00 2022-08-26 12:00:00 ... Practice 3 \n", "16 2022-09-02 12:30:00+02:00 2022-09-02 10:30:00 ... Practice 3 \n", "17 2022-09-09 14:00:00+02:00 2022-09-09 12:00:00 ... Practice 3 \n", "18 2022-09-30 18:00:00+08:00 2022-09-30 10:00:00 ... Practice 3 \n", "19 2022-10-07 12:00:00+09:00 2022-10-07 03:00:00 ... Practice 3 \n", "20 2022-10-21 14:00:00-05:00 2022-10-21 19:00:00 ... Practice 3 \n", "21 2022-10-28 13:00:00-06:00 2022-10-28 19:00:00 ... Practice 3 \n", "22 2022-11-11 12:30:00-03:00 2022-11-11 15:30:00 ... Practice 2 \n", "23 2022-11-18 14:00:00+04:00 2022-11-18 10:00:00 ... Practice 3 \n", "\n", " Session3Date Session3DateUtc Session4 \\\n", "0 2022-02-25 09:00:00+01:00 2022-02-25 08:00:00 None \n", "1 2022-03-12 10:00:00+03:00 2022-03-12 07:00:00 None \n", "2 2022-03-19 15:00:00+03:00 2022-03-19 12:00:00 Qualifying \n", "3 2022-03-26 17:00:00+03:00 2022-03-26 14:00:00 Qualifying \n", "4 2022-04-09 13:00:00+10:00 2022-04-09 03:00:00 Qualifying \n", "5 2022-04-23 12:30:00+02:00 2022-04-23 10:30:00 Sprint \n", "6 2022-05-07 13:00:00-04:00 2022-05-07 17:00:00 Qualifying \n", "7 2022-05-21 13:00:00+02:00 2022-05-21 11:00:00 Qualifying \n", "8 2022-05-28 13:00:00+02:00 2022-05-28 11:00:00 Qualifying \n", "9 2022-06-11 15:00:00+04:00 2022-06-11 11:00:00 Qualifying \n", "10 2022-06-18 13:00:00-04:00 2022-06-18 17:00:00 Qualifying \n", "11 2022-07-02 12:00:00+01:00 2022-07-02 11:00:00 Qualifying \n", "12 2022-07-09 12:30:00+02:00 2022-07-09 10:30:00 Sprint \n", "13 2022-07-23 13:00:00+02:00 2022-07-23 11:00:00 Qualifying \n", "14 2022-07-30 13:00:00+02:00 2022-07-30 11:00:00 Qualifying \n", "15 2022-08-27 13:00:00+02:00 2022-08-27 11:00:00 Qualifying \n", "16 2022-09-03 12:00:00+02:00 2022-09-03 10:00:00 Qualifying \n", "17 2022-09-10 13:00:00+02:00 2022-09-10 11:00:00 Qualifying \n", "18 2022-10-01 18:00:00+08:00 2022-10-01 10:00:00 Qualifying \n", "19 2022-10-08 12:00:00+09:00 2022-10-08 03:00:00 Qualifying \n", "20 2022-10-22 14:00:00-05:00 2022-10-22 19:00:00 Qualifying \n", "21 2022-10-29 12:00:00-06:00 2022-10-29 18:00:00 Qualifying \n", "22 2022-11-12 12:30:00-03:00 2022-11-12 15:30:00 Sprint \n", "23 2022-11-19 14:30:00+04:00 2022-11-19 10:30:00 Qualifying \n", "\n", " Session4Date Session4DateUtc Session5 \\\n", "0 NaT NaT None \n", "1 NaT NaT None \n", "2 2022-03-19 18:00:00+03:00 2022-03-19 15:00:00 Race \n", "3 2022-03-26 20:00:00+03:00 2022-03-26 17:00:00 Race \n", "4 2022-04-09 16:00:00+10:00 2022-04-09 06:00:00 Race \n", "5 2022-04-23 16:30:00+02:00 2022-04-23 14:30:00 Race \n", "6 2022-05-07 16:00:00-04:00 2022-05-07 20:00:00 Race \n", "7 2022-05-21 16:00:00+02:00 2022-05-21 14:00:00 Race \n", "8 2022-05-28 16:00:00+02:00 2022-05-28 14:00:00 Race \n", "9 2022-06-11 18:00:00+04:00 2022-06-11 14:00:00 Race \n", "10 2022-06-18 16:00:00-04:00 2022-06-18 20:00:00 Race \n", "11 2022-07-02 15:00:00+01:00 2022-07-02 14:00:00 Race \n", "12 2022-07-09 16:30:00+02:00 2022-07-09 14:30:00 Race \n", "13 2022-07-23 16:00:00+02:00 2022-07-23 14:00:00 Race \n", "14 2022-07-30 16:00:00+02:00 2022-07-30 14:00:00 Race \n", "15 2022-08-27 16:00:00+02:00 2022-08-27 14:00:00 Race \n", "16 2022-09-03 15:00:00+02:00 2022-09-03 13:00:00 Race \n", "17 2022-09-10 16:00:00+02:00 2022-09-10 14:00:00 Race \n", "18 2022-10-01 21:00:00+08:00 2022-10-01 13:00:00 Race \n", "19 2022-10-08 15:00:00+09:00 2022-10-08 06:00:00 Race \n", "20 2022-10-22 17:00:00-05:00 2022-10-22 22:00:00 Race \n", "21 2022-10-29 15:00:00-06:00 2022-10-29 21:00:00 Race \n", "22 2022-11-12 16:30:00-03:00 2022-11-12 19:30:00 Race \n", "23 2022-11-19 18:00:00+04:00 2022-11-19 14:00:00 Race \n", "\n", " Session5Date Session5DateUtc F1ApiSupport \n", "0 NaT NaT False \n", "1 NaT NaT True \n", "2 2022-03-20 18:00:00+03:00 2022-03-20 15:00:00 True \n", "3 2022-03-27 20:00:00+03:00 2022-03-27 17:00:00 True \n", "4 2022-04-10 15:00:00+10:00 2022-04-10 05:00:00 True \n", "5 2022-04-24 15:00:00+02:00 2022-04-24 13:00:00 True \n", "6 2022-05-08 15:30:00-04:00 2022-05-08 19:30:00 True \n", "7 2022-05-22 15:00:00+02:00 2022-05-22 13:00:00 True \n", "8 2022-05-29 15:00:00+02:00 2022-05-29 13:00:00 True \n", "9 2022-06-12 15:00:00+04:00 2022-06-12 11:00:00 True \n", "10 2022-06-19 14:00:00-04:00 2022-06-19 18:00:00 True \n", "11 2022-07-03 15:00:00+01:00 2022-07-03 14:00:00 True \n", "12 2022-07-10 15:00:00+02:00 2022-07-10 13:00:00 True \n", "13 2022-07-24 15:00:00+02:00 2022-07-24 13:00:00 True \n", "14 2022-07-31 15:00:00+02:00 2022-07-31 13:00:00 True \n", "15 2022-08-28 15:00:00+02:00 2022-08-28 13:00:00 True \n", "16 2022-09-04 15:00:00+02:00 2022-09-04 13:00:00 True \n", "17 2022-09-11 15:00:00+02:00 2022-09-11 13:00:00 True \n", "18 2022-10-02 20:00:00+08:00 2022-10-02 12:00:00 True \n", "19 2022-10-09 14:00:00+09:00 2022-10-09 05:00:00 True \n", "20 2022-10-23 14:00:00-05:00 2022-10-23 19:00:00 True \n", "21 2022-10-30 14:00:00-06:00 2022-10-30 20:00:00 True \n", "22 2022-11-13 15:00:00-03:00 2022-11-13 18:00:00 True \n", "23 2022-11-20 17:00:00+04:00 2022-11-20 13:00:00 True \n", "\n", "[24 rows x 23 columns]\n", " RoundNumber Country Location \\\n", "0 0 Bahrain Sakhir \n", "1 1 Bahrain Sakhir \n", "2 2 Saudi Arabia Jeddah \n", "3 3 Australia Melbourne \n", "4 4 Azerbaijan Baku \n", "5 5 United States Miami \n", "6 6 Monaco Monaco \n", "7 7 Spain Barcelona \n", "8 8 Canada Montréal \n", "9 9 Austria Spielberg \n", "10 10 Great Britain Silverstone \n", "11 11 Hungary Budapest \n", "12 12 Belgium Spa-Francorchamps \n", "13 13 Netherlands Zandvoort \n", "14 14 Italy Monza \n", "15 15 Singapore Marina Bay \n", "16 16 Japan Suzuka \n", "17 17 Qatar Lusail \n", "18 18 United States Austin \n", "19 19 Mexico Mexico City \n", "20 20 Brazil São Paulo \n", "21 21 United States Las Vegas \n", "22 22 Abu Dhabi Yas Island \n", "\n", " OfficialEventName EventDate \\\n", "0 FORMULA 1 ARAMCO PRE-SEASON TESTING 2023 2023-02-25 \n", "1 FORMULA 1 GULF AIR BAHRAIN GRAND PRIX 2023 2023-03-05 \n", "2 FORMULA 1 STC SAUDI ARABIAN GRAND PRIX 2023 2023-03-19 \n", "3 FORMULA 1 ROLEX AUSTRALIAN GRAND PRIX 2023 2023-04-02 \n", "4 FORMULA 1 AZERBAIJAN GRAND PRIX 2023 2023-04-30 \n", "5 FORMULA 1 CRYPTO.COM MIAMI GRAND PRIX 2023 2023-05-07 \n", "6 FORMULA 1 GRAND PRIX DE MONACO 2023 2023-05-28 \n", "7 FORMULA 1 AWS GRAN PREMIO DE ESPAÑA 2023 2023-06-04 \n", "8 FORMULA 1 PIRELLI GRAND PRIX DU CANADA 2023 2023-06-18 \n", "9 FORMULA 1 ROLEX GROSSER PREIS VON ÖSTERREICH 2023 2023-07-02 \n", "10 FORMULA 1 ARAMCO BRITISH GRAND PRIX 2023 2023-07-09 \n", "11 FORMULA 1 QATAR AIRWAYS HUNGARIAN GRAND PRIX 2023 2023-07-23 \n", "12 FORMULA 1 MSC CRUISES BELGIAN GRAND PRIX 2023 2023-07-30 \n", "13 FORMULA 1 HEINEKEN DUTCH GRAND PRIX 2023 2023-08-27 \n", "14 FORMULA 1 PIRELLI GRAN PREMIO D’ITALIA 2023 2023-09-03 \n", "15 FORMULA 1 SINGAPORE AIRLINES SINGAPORE GRAND P... 2023-09-17 \n", "16 FORMULA 1 LENOVO JAPANESE GRAND PRIX 2023 2023-09-24 \n", "17 FORMULA 1 QATAR AIRWAYS QATAR GRAND PRIX 2023 2023-10-08 \n", "18 FORMULA 1 LENOVO UNITED STATES GRAND PRIX 2023 2023-10-22 \n", "19 FORMULA 1 GRAN PREMIO DE LA CIUDAD DE MÉXICO 2023 2023-10-29 \n", "20 FORMULA 1 ROLEX GRANDE PRÊMIO DE SÃO PAULO 2023 2023-11-05 \n", "21 FORMULA 1 HEINEKEN SILVER LAS VEGAS GRAND PRIX... 2023-11-18 \n", "22 FORMULA 1 ETIHAD AIRWAYS ABU DHABI GRAND PRIX ... 2023-11-26 \n", "\n", " EventName EventFormat Session1 \\\n", "0 Pre-Season Testing testing Practice 1 \n", "1 Bahrain Grand Prix conventional Practice 1 \n", "2 Saudi Arabian Grand Prix conventional Practice 1 \n", "3 Australian Grand Prix conventional Practice 1 \n", "4 Azerbaijan Grand Prix sprint_shootout Practice 1 \n", "5 Miami Grand Prix conventional Practice 1 \n", "6 Monaco Grand Prix conventional Practice 1 \n", "7 Spanish Grand Prix conventional Practice 1 \n", "8 Canadian Grand Prix conventional Practice 1 \n", "9 Austrian Grand Prix sprint_shootout Practice 1 \n", "10 British Grand Prix conventional Practice 1 \n", "11 Hungarian Grand Prix conventional Practice 1 \n", "12 Belgian Grand Prix sprint_shootout Practice 1 \n", "13 Dutch Grand Prix conventional Practice 1 \n", "14 Italian Grand Prix conventional Practice 1 \n", "15 Singapore Grand Prix conventional Practice 1 \n", "16 Japanese Grand Prix conventional Practice 1 \n", "17 Qatar Grand Prix sprint_shootout Practice 1 \n", "18 United States Grand Prix sprint_shootout Practice 1 \n", "19 Mexico City Grand Prix conventional Practice 1 \n", "20 São Paulo Grand Prix sprint_shootout Practice 1 \n", "21 Las Vegas Grand Prix conventional Practice 1 \n", "22 Abu Dhabi Grand Prix conventional Practice 1 \n", "\n", " Session1Date Session1DateUtc ... Session3 \\\n", "0 2023-02-23 10:00:00+03:00 2023-02-23 07:00:00 ... Practice 3 \n", "1 2023-03-03 14:30:00+03:00 2023-03-03 11:30:00 ... Practice 3 \n", "2 2023-03-17 16:30:00+03:00 2023-03-17 13:30:00 ... Practice 3 \n", "3 2023-03-31 12:30:00+10:00 2023-03-31 02:30:00 ... Practice 3 \n", "4 2023-04-28 13:30:00+04:00 2023-04-28 09:30:00 ... Sprint Shootout \n", "5 2023-05-05 14:00:00-04:00 2023-05-05 18:00:00 ... Practice 3 \n", "6 2023-05-26 13:30:00+02:00 2023-05-26 11:30:00 ... Practice 3 \n", "7 2023-06-02 13:30:00+02:00 2023-06-02 11:30:00 ... Practice 3 \n", "8 2023-06-16 13:30:00-04:00 2023-06-16 17:30:00 ... Practice 3 \n", "9 2023-06-30 13:30:00+02:00 2023-06-30 11:30:00 ... Sprint Shootout \n", "10 2023-07-07 12:30:00+01:00 2023-07-07 11:30:00 ... Practice 3 \n", "11 2023-07-21 13:30:00+02:00 2023-07-21 11:30:00 ... Practice 3 \n", "12 2023-07-28 13:30:00+02:00 2023-07-28 11:30:00 ... Sprint Shootout \n", "13 2023-08-25 12:30:00+02:00 2023-08-25 10:30:00 ... Practice 3 \n", "14 2023-09-01 13:30:00+02:00 2023-09-01 11:30:00 ... Practice 3 \n", "15 2023-09-15 17:30:00+08:00 2023-09-15 09:30:00 ... Practice 3 \n", "16 2023-09-22 11:30:00+09:00 2023-09-22 02:30:00 ... Practice 3 \n", "17 2023-10-06 16:30:00+03:00 2023-10-06 13:30:00 ... Sprint Shootout \n", "18 2023-10-20 12:30:00-05:00 2023-10-20 17:30:00 ... Sprint Shootout \n", "19 2023-10-27 12:30:00-06:00 2023-10-27 18:30:00 ... Practice 3 \n", "20 2023-11-03 11:30:00-03:00 2023-11-03 14:30:00 ... Sprint Shootout \n", "21 2023-11-16 20:30:00-08:00 2023-11-17 04:30:00 ... Practice 3 \n", "22 2023-11-24 13:30:00+04:00 2023-11-24 09:30:00 ... Practice 3 \n", "\n", " Session3Date Session3DateUtc Session4 \\\n", "0 2023-02-25 10:00:00+03:00 2023-02-25 07:00:00 None \n", "1 2023-03-04 14:30:00+03:00 2023-03-04 11:30:00 Qualifying \n", "2 2023-03-18 16:30:00+03:00 2023-03-18 13:30:00 Qualifying \n", "3 2023-04-01 12:30:00+10:00 2023-04-01 02:30:00 Qualifying \n", "4 2023-04-29 12:30:00+04:00 2023-04-29 08:30:00 Sprint \n", "5 2023-05-06 12:30:00-04:00 2023-05-06 16:30:00 Qualifying \n", "6 2023-05-27 12:30:00+02:00 2023-05-27 10:30:00 Qualifying \n", "7 2023-06-03 12:30:00+02:00 2023-06-03 10:30:00 Qualifying \n", "8 2023-06-17 12:30:00-04:00 2023-06-17 16:30:00 Qualifying \n", "9 2023-07-01 12:00:00+02:00 2023-07-01 10:00:00 Sprint \n", "10 2023-07-08 11:30:00+01:00 2023-07-08 10:30:00 Qualifying \n", "11 2023-07-22 12:30:00+02:00 2023-07-22 10:30:00 Qualifying \n", "12 2023-07-29 12:00:00+02:00 2023-07-29 10:00:00 Sprint \n", "13 2023-08-26 11:30:00+02:00 2023-08-26 09:30:00 Qualifying \n", "14 2023-09-02 12:30:00+02:00 2023-09-02 10:30:00 Qualifying \n", "15 2023-09-16 17:30:00+08:00 2023-09-16 09:30:00 Qualifying \n", "16 2023-09-23 11:30:00+09:00 2023-09-23 02:30:00 Qualifying \n", "17 2023-10-07 16:20:00+03:00 2023-10-07 13:20:00 Sprint \n", "18 2023-10-21 12:30:00-05:00 2023-10-21 17:30:00 Sprint \n", "19 2023-10-28 11:30:00-06:00 2023-10-28 17:30:00 Qualifying \n", "20 2023-11-04 11:00:00-03:00 2023-11-04 14:00:00 Sprint \n", "21 2023-11-17 20:30:00-08:00 2023-11-18 04:30:00 Qualifying \n", "22 2023-11-25 14:30:00+04:00 2023-11-25 10:30:00 Qualifying \n", "\n", " Session4Date Session4DateUtc Session5 \\\n", "0 NaT NaT None \n", "1 2023-03-04 18:00:00+03:00 2023-03-04 15:00:00 Race \n", "2 2023-03-18 20:00:00+03:00 2023-03-18 17:00:00 Race \n", "3 2023-04-01 16:00:00+10:00 2023-04-01 06:00:00 Race \n", "4 2023-04-29 17:30:00+04:00 2023-04-29 13:30:00 Race \n", "5 2023-05-06 16:00:00-04:00 2023-05-06 20:00:00 Race \n", "6 2023-05-27 16:00:00+02:00 2023-05-27 14:00:00 Race \n", "7 2023-06-03 16:00:00+02:00 2023-06-03 14:00:00 Race \n", "8 2023-06-17 16:00:00-04:00 2023-06-17 20:00:00 Race \n", "9 2023-07-01 16:30:00+02:00 2023-07-01 14:30:00 Race \n", "10 2023-07-08 15:00:00+01:00 2023-07-08 14:00:00 Race \n", "11 2023-07-22 16:00:00+02:00 2023-07-22 14:00:00 Race \n", "12 2023-07-29 17:05:00+02:00 2023-07-29 15:05:00 Race \n", "13 2023-08-26 15:00:00+02:00 2023-08-26 13:00:00 Race \n", "14 2023-09-02 16:00:00+02:00 2023-09-02 14:00:00 Race \n", "15 2023-09-16 21:00:00+08:00 2023-09-16 13:00:00 Race \n", "16 2023-09-23 15:00:00+09:00 2023-09-23 06:00:00 Race \n", "17 2023-10-07 20:30:00+03:00 2023-10-07 17:30:00 Race \n", "18 2023-10-21 17:00:00-05:00 2023-10-21 22:00:00 Race \n", "19 2023-10-28 15:00:00-06:00 2023-10-28 21:00:00 Race \n", "20 2023-11-04 15:30:00-03:00 2023-11-04 18:30:00 Race \n", "21 2023-11-18 00:00:00-08:00 2023-11-18 08:00:00 Race \n", "22 2023-11-25 18:00:00+04:00 2023-11-25 14:00:00 Race \n", "\n", " Session5Date Session5DateUtc F1ApiSupport \n", "0 NaT NaT True \n", "1 2023-03-05 18:00:00+03:00 2023-03-05 15:00:00 True \n", "2 2023-03-19 20:00:00+03:00 2023-03-19 17:00:00 True \n", "3 2023-04-02 15:00:00+10:00 2023-04-02 05:00:00 True \n", "4 2023-04-30 15:00:00+04:00 2023-04-30 11:00:00 True \n", "5 2023-05-07 15:30:00-04:00 2023-05-07 19:30:00 True \n", "6 2023-05-28 15:00:00+02:00 2023-05-28 13:00:00 True \n", "7 2023-06-04 15:00:00+02:00 2023-06-04 13:00:00 True \n", "8 2023-06-18 14:00:00-04:00 2023-06-18 18:00:00 True \n", "9 2023-07-02 15:00:00+02:00 2023-07-02 13:00:00 True \n", "10 2023-07-09 15:00:00+01:00 2023-07-09 14:00:00 True \n", "11 2023-07-23 15:00:00+02:00 2023-07-23 13:00:00 True \n", "12 2023-07-30 15:00:00+02:00 2023-07-30 13:00:00 True \n", "13 2023-08-27 15:00:00+02:00 2023-08-27 13:00:00 True \n", "14 2023-09-03 15:00:00+02:00 2023-09-03 13:00:00 True \n", "15 2023-09-17 20:00:00+08:00 2023-09-17 12:00:00 True \n", "16 2023-09-24 14:00:00+09:00 2023-09-24 05:00:00 True \n", "17 2023-10-08 20:00:00+03:00 2023-10-08 17:00:00 True \n", "18 2023-10-22 14:00:00-05:00 2023-10-22 19:00:00 True \n", "19 2023-10-29 14:00:00-06:00 2023-10-29 20:00:00 True \n", "20 2023-11-05 14:00:00-03:00 2023-11-05 17:00:00 True \n", "21 2023-11-18 22:00:00-08:00 2023-11-19 06:00:00 True \n", "22 2023-11-26 17:00:00+04:00 2023-11-26 13:00:00 True \n", "\n", "[23 rows x 23 columns]\n", " RoundNumber Country Location \\\n", "0 0 Bahrain Sakhir \n", "1 1 Bahrain Sakhir \n", "2 2 Saudi Arabia Jeddah \n", "3 3 Australia Melbourne \n", "4 4 Japan Suzuka \n", "5 5 China Shanghai \n", "6 6 United States Miami \n", "7 7 Italy Imola \n", "8 8 Monaco Monaco \n", "9 9 Canada Montréal \n", "10 10 Spain Barcelona \n", "11 11 Austria Spielberg \n", "12 12 United Kingdom Silverstone \n", "13 13 Hungary Budapest \n", "14 14 Belgium Spa-Francorchamps \n", "15 15 Netherlands Zandvoort \n", "16 16 Italy Monza \n", "17 17 Azerbaijan Baku \n", "18 18 Singapore Marina Bay \n", "19 19 United States Austin \n", "20 20 Mexico Mexico City \n", "21 21 Brazil São Paulo \n", "22 22 United States Las Vegas \n", "23 23 Qatar Lusail \n", "24 24 United Arab Emirates Yas Island \n", "\n", " OfficialEventName EventDate \\\n", "0 FORMULA 1 ARAMCO PRE-SEASON TESTING 2024 2024-02-23 \n", "1 FORMULA 1 GULF AIR BAHRAIN GRAND PRIX 2024 2024-03-02 \n", "2 FORMULA 1 STC SAUDI ARABIAN GRAND PRIX 2024 2024-03-09 \n", "3 FORMULA 1 ROLEX AUSTRALIAN GRAND PRIX 2024 2024-03-24 \n", "4 FORMULA 1 MSC CRUISES JAPANESE GRAND PRIX 2024 2024-04-07 \n", "5 FORMULA 1 LENOVO CHINESE GRAND PRIX 2024 2024-04-21 \n", "6 FORMULA 1 CRYPTO.COM MIAMI GRAND PRIX 2024 2024-05-05 \n", "7 FORMULA 1 MSC CRUISES GRAN PREMIO DEL MADE IN ... 2024-05-19 \n", "8 FORMULA 1 GRAND PRIX DE MONACO 2024 2024-05-26 \n", "9 FORMULA 1 AWS GRAND PRIX DU CANADA 2024 2024-06-09 \n", "10 FORMULA 1 ARAMCO GRAN PREMIO DE ESPAÑA 2024 2024-06-23 \n", "11 FORMULA 1 QATAR AIRWAYS AUSTRIAN GRAND PRIX 2024 2024-06-30 \n", "12 FORMULA 1 QATAR AIRWAYS BRITISH GRAND PRIX 2024 2024-07-07 \n", "13 FORMULA 1 HUNGARIAN GRAND PRIX 2024 2024-07-21 \n", "14 FORMULA 1 ROLEX BELGIAN GRAND PRIX 2024 2024-07-28 \n", "15 FORMULA 1 HEINEKEN DUTCH GRAND PRIX 2024 2024-08-25 \n", "16 FORMULA 1 PIRELLI GRAN PREMIO D’ITALIA 2024 2024-09-01 \n", "17 FORMULA 1 QATAR AIRWAYS AZERBAIJAN GRAND PRIX ... 2024-09-15 \n", "18 FORMULA 1 SINGAPORE AIRLINES SINGAPORE GRAND P... 2024-09-22 \n", "19 FORMULA 1 PIRELLI UNITED STATES GRAND PRIX 2024 2024-10-20 \n", "20 FORMULA 1 GRAN PREMIO DE LA CIUDAD DE MÉXICO 2024 2024-10-27 \n", "21 FORMULA 1 LENOVO GRANDE PRÊMIO DE SÃO PAULO 2024 2024-11-03 \n", "22 FORMULA 1 HEINEKEN SILVER LAS VEGAS GRAND PRIX... 2024-11-23 \n", "23 FORMULA 1 QATAR AIRWAYS QATAR GRAND PRIX 2024 2024-12-01 \n", "24 FORMULA 1 ETIHAD AIRWAYS ABU DHABI GRAND PRIX ... 2024-12-08 \n", "\n", " EventName EventFormat Session1 \\\n", "0 Pre-Season Testing testing Practice 1 \n", "1 Bahrain Grand Prix conventional Practice 1 \n", "2 Saudi Arabian Grand Prix conventional Practice 1 \n", "3 Australian Grand Prix conventional Practice 1 \n", "4 Japanese Grand Prix conventional Practice 1 \n", "5 Chinese Grand Prix sprint_qualifying Practice 1 \n", "6 Miami Grand Prix sprint_qualifying Practice 1 \n", "7 Emilia Romagna Grand Prix conventional Practice 1 \n", "8 Monaco Grand Prix conventional Practice 1 \n", "9 Canadian Grand Prix conventional Practice 1 \n", "10 Spanish Grand Prix conventional Practice 1 \n", "11 Austrian Grand Prix sprint_qualifying Practice 1 \n", "12 British Grand Prix conventional Practice 1 \n", "13 Hungarian Grand Prix conventional Practice 1 \n", "14 Belgian Grand Prix conventional Practice 1 \n", "15 Dutch Grand Prix conventional Practice 1 \n", "16 Italian Grand Prix conventional Practice 1 \n", "17 Azerbaijan Grand Prix conventional Practice 1 \n", "18 Singapore Grand Prix conventional Practice 1 \n", "19 United States Grand Prix sprint_qualifying Practice 1 \n", "20 Mexico City Grand Prix conventional Practice 1 \n", "21 São Paulo Grand Prix sprint_qualifying Practice 1 \n", "22 Las Vegas Grand Prix conventional Practice 1 \n", "23 Qatar Grand Prix sprint_qualifying Practice 1 \n", "24 Abu Dhabi Grand Prix conventional Practice 1 \n", "\n", " Session1Date Session1DateUtc ... Session3 \\\n", "0 2024-02-21 10:00:00+03:00 2024-02-21 07:00:00 ... Practice 3 \n", "1 2024-02-29 14:30:00+03:00 2024-02-29 11:30:00 ... Practice 3 \n", "2 2024-03-07 16:30:00+03:00 2024-03-07 13:30:00 ... Practice 3 \n", "3 2024-03-22 12:30:00+11:00 2024-03-22 01:30:00 ... Practice 3 \n", "4 2024-04-05 11:30:00+09:00 2024-04-05 02:30:00 ... Practice 3 \n", "5 2024-04-19 11:30:00+08:00 2024-04-19 03:30:00 ... Sprint \n", "6 2024-05-03 12:30:00-04:00 2024-05-03 16:30:00 ... Sprint \n", "7 2024-05-17 13:30:00+02:00 2024-05-17 11:30:00 ... Practice 3 \n", "8 2024-05-24 13:30:00+02:00 2024-05-24 11:30:00 ... Practice 3 \n", "9 2024-06-07 13:30:00-04:00 2024-06-07 17:30:00 ... Practice 3 \n", "10 2024-06-21 13:30:00+02:00 2024-06-21 11:30:00 ... Practice 3 \n", "11 2024-06-28 12:30:00+02:00 2024-06-28 10:30:00 ... Sprint \n", "12 2024-07-05 12:30:00+01:00 2024-07-05 11:30:00 ... Practice 3 \n", "13 2024-07-19 13:30:00+02:00 2024-07-19 11:30:00 ... Practice 3 \n", "14 2024-07-26 13:30:00+02:00 2024-07-26 11:30:00 ... Practice 3 \n", "15 2024-08-23 12:30:00+02:00 2024-08-23 10:30:00 ... Practice 3 \n", "16 2024-08-30 13:30:00+02:00 2024-08-30 11:30:00 ... Practice 3 \n", "17 2024-09-13 13:30:00+04:00 2024-09-13 09:30:00 ... Practice 3 \n", "18 2024-09-20 17:30:00+08:00 2024-09-20 09:30:00 ... Practice 3 \n", "19 2024-10-18 12:30:00-05:00 2024-10-18 17:30:00 ... Sprint \n", "20 2024-10-25 12:30:00-06:00 2024-10-25 18:30:00 ... Practice 3 \n", "21 2024-11-01 11:30:00-03:00 2024-11-01 14:30:00 ... Sprint \n", "22 2024-11-21 18:30:00-08:00 2024-11-22 02:30:00 ... Practice 3 \n", "23 2024-11-29 16:30:00+03:00 2024-11-29 13:30:00 ... Sprint \n", "24 2024-12-06 13:30:00+04:00 2024-12-06 09:30:00 ... Practice 3 \n", "\n", " Session3Date Session3DateUtc Session4 \\\n", "0 2024-02-23 10:00:00+03:00 2024-02-23 07:00:00 None \n", "1 2024-03-01 15:30:00+03:00 2024-03-01 12:30:00 Qualifying \n", "2 2024-03-08 16:30:00+03:00 2024-03-08 13:30:00 Qualifying \n", "3 2024-03-23 12:30:00+11:00 2024-03-23 01:30:00 Qualifying \n", "4 2024-04-06 11:30:00+09:00 2024-04-06 02:30:00 Qualifying \n", "5 2024-04-20 11:00:00+08:00 2024-04-20 03:00:00 Qualifying \n", "6 2024-05-04 12:00:00-04:00 2024-05-04 16:00:00 Qualifying \n", "7 2024-05-18 12:30:00+02:00 2024-05-18 10:30:00 Qualifying \n", "8 2024-05-25 12:30:00+02:00 2024-05-25 10:30:00 Qualifying \n", "9 2024-06-08 12:30:00-04:00 2024-06-08 16:30:00 Qualifying \n", "10 2024-06-22 12:30:00+02:00 2024-06-22 10:30:00 Qualifying \n", "11 2024-06-29 12:00:00+02:00 2024-06-29 10:00:00 Qualifying \n", "12 2024-07-06 11:30:00+01:00 2024-07-06 10:30:00 Qualifying \n", "13 2024-07-20 12:30:00+02:00 2024-07-20 10:30:00 Qualifying \n", "14 2024-07-27 12:30:00+02:00 2024-07-27 10:30:00 Qualifying \n", "15 2024-08-24 11:30:00+02:00 2024-08-24 09:30:00 Qualifying \n", "16 2024-08-31 12:30:00+02:00 2024-08-31 10:30:00 Qualifying \n", "17 2024-09-14 12:30:00+04:00 2024-09-14 08:30:00 Qualifying \n", "18 2024-09-21 17:30:00+08:00 2024-09-21 09:30:00 Qualifying \n", "19 2024-10-19 13:00:00-05:00 2024-10-19 18:00:00 Qualifying \n", "20 2024-10-26 11:30:00-06:00 2024-10-26 17:30:00 Qualifying \n", "21 2024-11-02 11:00:00-03:00 2024-11-02 14:00:00 Qualifying \n", "22 2024-11-22 18:30:00-08:00 2024-11-23 02:30:00 Qualifying \n", "23 2024-11-30 17:00:00+03:00 2024-11-30 14:00:00 Qualifying \n", "24 2024-12-07 14:30:00+04:00 2024-12-07 10:30:00 Qualifying \n", "\n", " Session4Date Session4DateUtc Session5 \\\n", "0 NaT NaT None \n", "1 2024-03-01 19:00:00+03:00 2024-03-01 16:00:00 Race \n", "2 2024-03-08 20:00:00+03:00 2024-03-08 17:00:00 Race \n", "3 2024-03-23 16:00:00+11:00 2024-03-23 05:00:00 Race \n", "4 2024-04-06 15:00:00+09:00 2024-04-06 06:00:00 Race \n", "5 2024-04-20 15:00:00+08:00 2024-04-20 07:00:00 Race \n", "6 2024-05-04 16:00:00-04:00 2024-05-04 20:00:00 Race \n", "7 2024-05-18 16:00:00+02:00 2024-05-18 14:00:00 Race \n", "8 2024-05-25 16:00:00+02:00 2024-05-25 14:00:00 Race \n", "9 2024-06-08 16:00:00-04:00 2024-06-08 20:00:00 Race \n", "10 2024-06-22 16:00:00+02:00 2024-06-22 14:00:00 Race \n", "11 2024-06-29 16:00:00+02:00 2024-06-29 14:00:00 Race \n", "12 2024-07-06 15:00:00+01:00 2024-07-06 14:00:00 Race \n", "13 2024-07-20 16:00:00+02:00 2024-07-20 14:00:00 Race \n", "14 2024-07-27 16:00:00+02:00 2024-07-27 14:00:00 Race \n", "15 2024-08-24 15:00:00+02:00 2024-08-24 13:00:00 Race \n", "16 2024-08-31 16:00:00+02:00 2024-08-31 14:00:00 Race \n", "17 2024-09-14 16:00:00+04:00 2024-09-14 12:00:00 Race \n", "18 2024-09-21 21:00:00+08:00 2024-09-21 13:00:00 Race \n", "19 2024-10-19 17:00:00-05:00 2024-10-19 22:00:00 Race \n", "20 2024-10-26 15:00:00-06:00 2024-10-26 21:00:00 Race \n", "21 2024-11-03 07:30:00-03:00 2024-11-03 10:30:00 Race \n", "22 2024-11-22 22:00:00-08:00 2024-11-23 06:00:00 Race \n", "23 2024-11-30 21:00:00+03:00 2024-11-30 18:00:00 Race \n", "24 2024-12-07 18:00:00+04:00 2024-12-07 14:00:00 Race \n", "\n", " Session5Date Session5DateUtc F1ApiSupport \n", "0 NaT NaT True \n", "1 2024-03-02 18:00:00+03:00 2024-03-02 15:00:00 True \n", "2 2024-03-09 20:00:00+03:00 2024-03-09 17:00:00 True \n", "3 2024-03-24 15:00:00+11:00 2024-03-24 04:00:00 True \n", "4 2024-04-07 14:00:00+09:00 2024-04-07 05:00:00 True \n", "5 2024-04-21 15:00:00+08:00 2024-04-21 07:00:00 True \n", "6 2024-05-05 16:00:00-04:00 2024-05-05 20:00:00 True \n", "7 2024-05-19 15:00:00+02:00 2024-05-19 13:00:00 True \n", "8 2024-05-26 15:00:00+02:00 2024-05-26 13:00:00 True \n", "9 2024-06-09 14:00:00-04:00 2024-06-09 18:00:00 True \n", "10 2024-06-23 15:00:00+02:00 2024-06-23 13:00:00 True \n", "11 2024-06-30 15:00:00+02:00 2024-06-30 13:00:00 True \n", "12 2024-07-07 15:00:00+01:00 2024-07-07 14:00:00 True \n", "13 2024-07-21 15:00:00+02:00 2024-07-21 13:00:00 True \n", "14 2024-07-28 15:00:00+02:00 2024-07-28 13:00:00 True \n", "15 2024-08-25 15:00:00+02:00 2024-08-25 13:00:00 True \n", "16 2024-09-01 15:00:00+02:00 2024-09-01 13:00:00 True \n", "17 2024-09-15 15:00:00+04:00 2024-09-15 11:00:00 True \n", "18 2024-09-22 20:00:00+08:00 2024-09-22 12:00:00 True \n", "19 2024-10-20 14:00:00-05:00 2024-10-20 19:00:00 True \n", "20 2024-10-27 14:00:00-06:00 2024-10-27 20:00:00 True \n", "21 2024-11-03 12:30:00-03:00 2024-11-03 15:30:00 True \n", "22 2024-11-23 22:00:00-08:00 2024-11-24 06:00:00 True \n", "23 2024-12-01 19:00:00+03:00 2024-12-01 16:00:00 True \n", "24 2024-12-08 17:00:00+04:00 2024-12-08 13:00:00 True \n", "\n", "[25 rows x 23 columns]\n", "{'Session2DateUtc', 'Session2Date', 'OfficialEventName', 'Session2', 'EventName', 'RoundNumber', 'Session5DateUtc', 'Session1DateUtc', 'Session4DateUtc', 'Session4Date', 'Session3Date', 'F1ApiSupport', 'Country', 'Session5', 'EventFormat', 'Session3DateUtc', 'Session4', 'Session1', 'Session1Date', 'Session3', 'EventDate', 'Location', 'Session5Date'}\n" ] } ], "source": [ "# FastF1 general setup\n", "cache_dir = '../data/cache'\n", "if not os.path.exists(cache_dir):\n", " os.makedirs(cache_dir)\n", "\n", "fastf1.Cache.enable_cache(cache_dir)\n", "fastf1.plotting.setup_mpl(misc_mpl_mods=False, color_scheme=None)\n", "logging.disable(logging.INFO)\n", "warnings.filterwarnings('ignore', category=UserWarning)\n", "\n", "# Set up plot style\n", "# print style.available to check available styles\n", "plt.style.use('seaborn-v0_8-whitegrid')\n", "\n", "# LIST ALL EVENTS\n", "print(fastf1.get_event_schedule(2021))\n", "print(fastf1.get_event_schedule(2022))\n", "print(fastf1.get_event_schedule(2023))\n", "print(fastf1.get_event_schedule(2024))\n", "\n", "# Find common events\n", "common_events = set(fastf1.get_event_schedule(2021)) & set(fastf1.get_event_schedule(2022)) & set(fastf1.get_event_schedule(2023)) & set(fastf1.get_event_schedule(2024))\n", "print(common_events)\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Define years, sessions, and events of interest\n", "years = [2021, 2022, 2023, 2024]\n", "sessions = ['Race']\n", "events = ['Bahrain Grand Prix', 'Saudi Arabian Grand Prix', 'Dutch Grand Prix', 'Italian Grand Prix', 'Austrian Grand Prix', 'Hungarian Grand Prix', 'British Grand Prix', 'Belgian Grand Prix', 'United States Grand Prix', 'Mexico City Grand Prix', 'Sao Paulo Grand Prix']" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Processing 2021 Bahrain Grand Prix - Race\n", "Processing 2021 Saudi Arabian Grand Prix - Race\n", "Processing 2021 Dutch Grand Prix - Race\n", "Processing 2021 Italian Grand Prix - Race\n", "Processing 2021 Austrian Grand Prix - Race\n", "Processing 2021 Hungarian Grand Prix - Race\n", "Processing 2021 British Grand Prix - Race\n", "Processing 2021 Belgian Grand Prix - Race\n", "Processing 2021 United States Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "core WARNING \tDriver 7: Lap timing integrity check failed for 1 lap(s)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2021 Mexico City Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2021 Sao Paulo Grand Prix - Race\n", "Processing 2022 Bahrain Grand Prix - Race\n", "Processing 2022 Saudi Arabian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "core WARNING \tNo lap data for driver 22\n", "core WARNING \tNo lap data for driver 47\n", "core WARNING \tFailed to perform lap accuracy check - all laps marked as inaccurate (driver 22)\n", "core WARNING \tFailed to perform lap accuracy check - all laps marked as inaccurate (driver 47)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2022 Dutch Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "_api WARNING \tDriver 241: Position data is incomplete!\n", "_api WARNING \tDriver 242: Position data is incomplete!\n", "_api WARNING \tDriver 243: Position data is incomplete!\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2022 Italian Grand Prix - Race\n", "Processing 2022 Austrian Grand Prix - Race\n", "Processing 2022 Hungarian Grand Prix - Race\n", "Processing 2022 British Grand Prix - Race\n", "Processing 2022 Belgian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2022 United States Grand Prix - Race\n", "Processing 2022 Mexico City Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2022 Sao Paulo Grand Prix - Race\n", "Processing 2023 Bahrain Grand Prix - Race\n", "Processing 2023 Saudi Arabian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "_api WARNING \tDriver 241: Position data is incomplete!\n", "_api WARNING \tDriver 242: Position data is incomplete!\n", "_api WARNING \tDriver 243: Position data is incomplete!\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2023 Dutch Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "_api WARNING \tDriver 241: Position data is incomplete!\n", "_api WARNING \tDriver 242: Position data is incomplete!\n", "_api WARNING \tDriver 243: Position data is incomplete!\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2023 Italian Grand Prix - Race\n", "Processing 2023 Austrian Grand Prix - Race\n", "Processing 2023 Hungarian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "_api WARNING \tSkipping lap alignment (no suitable lap)!\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2023 British Grand Prix - Race\n", "Processing 2023 Belgian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2023 United States Grand Prix - Race\n", "Processing 2023 Mexico City Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2023 Sao Paulo Grand Prix - Race\n", "Processing 2024 Bahrain Grand Prix - Race\n", "Processing 2024 Saudi Arabian Grand Prix - Race\n", "Processing 2024 Dutch Grand Prix - Race\n", "Processing 2024 Italian Grand Prix - Race\n", "Processing 2024 Austrian Grand Prix - Race\n", "Processing 2024 Hungarian Grand Prix - Race\n", "Processing 2024 British Grand Prix - Race\n", "Processing 2024 Belgian Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2024 United States Grand Prix - Race\n", "Processing 2024 Mexico City Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Processing 2024 Sao Paulo Grand Prix - Race\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "core WARNING \tNo lap data for driver 23\n", "core WARNING \tFailed to perform lap accuracy check - all laps marked as inaccurate (driver 23)\n" ] } ], "source": [ "# Get data from FastF1 API\n", "\n", "# Data containers\n", "weather_data_list = []\n", "lap_data_list = []\n", "\n", "# Loop through years and sessions\n", "for year in years:\n", " for event_name in events: \n", " for session_name in sessions:\n", " try:\n", " print(f\"Processing {year} {event_name} - {session_name}\")\n", " \n", " # Load the session\n", " session = fastf1.get_session(year, event_name, session_name, backend='fastf1')\n", " session.load()\n", " \n", " # Process weather data\n", " weather_data = session.weather_data\n", " if weather_data is not None:\n", " weather_df = pd.DataFrame(weather_data)\n", " # Add context columns\n", " weather_df['Year'] = year\n", " weather_df['Event'] = event_name\n", " weather_df['Session'] = session_name\n", " weather_data_list.append(weather_df)\n", "\n", " # Process lap data\n", " lap_data = session.laps\n", " if lap_data is not None:\n", " lap_df = pd.DataFrame(lap_data)\n", " # Add context columns\n", " lap_df['Year'] = year\n", " lap_df['Event'] = event_name\n", " lap_df['Session'] = session_name\n", " # Ensure driver information is included\n", " if 'Driver' not in lap_df.columns:\n", " lap_df['Driver'] = lap_df['DriverNumber'].map(session.drivers)\n", " # Add team information if available\n", " if 'Team' not in lap_df.columns:\n", " lap_df['Team'] = lap_df['Driver'].map(session.drivers_info['TeamName'])\n", " lap_data_list.append(lap_df)\n", " \n", " except Exception as e:\n", " print(f\"Error with {event_name} {session_name} ({year}): {e}\")\n", "\n", "# Combine data into DataFrames\n", "if weather_data_list:\n", " weather_data_combined = pd.concat(weather_data_list, ignore_index=True)\n", " # Ensure consistent column ordering\n", " weather_cols = ['Time', 'Year', 'Event', 'Session', \n", " 'AirTemp', 'Humidity', 'Pressure', 'Rainfall', \n", " 'TrackTemp', 'WindDirection', 'WindSpeed']\n", " weather_data_combined = weather_data_combined[weather_cols]\n", " \n", "if lap_data_list:\n", " lap_data_combined = pd.concat(lap_data_list, ignore_index=True)\n", " # Ensure consistent column ordering\n", " lap_cols = ['Time', 'Year', 'Event', 'Session', \n", " 'Driver', 'Team', 'LapNumber', 'LapTime',\n", " 'Sector1Time', 'Sector2Time', 'Sector3Time',\n", " 'Compound', 'TyreLife', 'FreshTyre',\n", " 'SpeedI1', 'SpeedI2', 'SpeedFL', 'SpeedST']\n", " # Only include columns that exist\n", " existing_cols = [col for col in lap_cols if col in lap_data_combined.columns]\n", " lap_data_combined = lap_data_combined[existing_cols]\n", " \n", "# Time conversion\n", "# Function to convert timedelta to datetime\n", "def convert_timedelta_to_datetime(df, base_date='2021-01-01'):\n", " if 'Time' in df.columns:\n", " # Create a base datetime and add the timedelta\n", " base = pd.Timestamp(base_date)\n", " if df['Time'].dtype == 'timedelta64[ns]':\n", " df['Time'] = base + df['Time']\n", " return df\n", "\n", "# Apply conversion to both dataframes\n", "weather_data_combined = convert_timedelta_to_datetime(weather_data_combined)\n", "lap_data_combined = convert_timedelta_to_datetime(lap_data_combined)\n", "\n", "# Remove missing values\n", "weather_data_combined = weather_data_combined.dropna()\n", "lap_data_combined = lap_data_combined.dropna()\n", "\n", "# Create a new column for lap time in seconds\n", "lap_data_combined['LapTime_seconds'] = lap_data_combined['LapTime'].dt.total_seconds()\n", "\n", "# Merge the data\n", "merged_data = pd.merge_asof(\n", " lap_data_combined.sort_values('Time'),\n", " weather_data_combined.sort_values('Time'),\n", " on='Time',\n", " by=['Event', 'Year'], # Match within same event and year\n", " direction='nearest',\n", " tolerance=pd.Timedelta('1 min') # Allow matching within 1 minute\n", ")" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def engineer_features(df):\n", " \"\"\"\n", " Engineer features for F1 lap time prediction with enhanced track-specific optimizations.\n", " \n", " Parameters:\n", " df (pandas.DataFrame): Input dataframe containing raw F1 session data\n", " Returns:\n", " pandas.DataFrame: DataFrame with engineered features\n", " \"\"\"\n", " # Basic weather and track condition features\n", " df['GripCondition'] = df.apply(lambda x: \n", " x['TrackTemp'] * (1 - x['Humidity']/150) * (1 - abs(x['WindSpeed'])/50) if 'British' in x['Event']\n", " else x['TrackTemp'] * (1 - x['Humidity']/100), axis=1)\n", " \n", " df['TempDelta'] = df['TrackTemp'] - df['AirTemp']\n", " \n", " # Enhanced tire degradation with weather impact\n", " df['TyreDeg'] = df.apply(lambda x: \n", " np.exp(-0.025 * x['TyreLife']) * (1 - x['Humidity']/200) if 'British' in x['Event']\n", " else np.exp(-0.025 * x['TyreLife']) if 'Belgian' in x['Event']\n", " else np.exp(-0.015 * x['TyreLife']), axis=1)\n", " \n", " # Track evolution with enhanced weather adjustment\n", " df['TrackEvolution'] = df.apply(lambda x: \n", " (1 - np.exp(-0.15 * x['LapNumber'])) * (1 - x['Humidity']/250) * (1 - abs(x['WindSpeed'])/40) if 'British' in x['Event']\n", " else (1 - np.exp(-0.15 * x['LapNumber'])) if 'United States' in x['Event']\n", " else 1 - np.exp(-0.1 * x['LapNumber']), axis=1)\n", " \n", " # Temperature interactions\n", " df['TempInteraction'] = df['TrackTemp'] * df['AirTemp']\n", " df['TempInteractionSquared'] = df['TempInteraction'] ** 2\n", " \n", " # Enhanced weather complexity\n", " df['WeatherComplexity'] = df.apply(lambda x:\n", " (x['WindSpeed'] * 0.4 + abs(x['TempDelta']) * 0.4 + x['Humidity'] * 0.2) / 100.0 if 'British' in x['Event']\n", " else (x['WindSpeed'] * 0.3 + abs(x['TempDelta']) * 0.4 + x['Humidity'] * 0.3) / 100.0 if 'Belgian' in x['Event']\n", " else (x['WindSpeed'] * 0.2 + abs(x['TempDelta']) * 0.5 + x['Humidity'] * 0.3) / 100.0,\n", " axis=1)\n", " \n", " # Track-specific features\n", " df['DesertEffect'] = np.where(\n", " df['Event'].str.contains('Bahrain'),\n", " df['WindSpeed'] * df['Humidity'] * df['TempInteraction'] / 10000,\n", " 0\n", " )\n", " \n", " # Enhanced wet weather effect\n", " df['WetWeatherEffect'] = df.apply(lambda x:\n", " (x['Humidity'] * x['WindSpeed'] * abs(x['TempDelta'])) / 800 if 'British' in x['Event']\n", " else (x['Humidity'] * x['WindSpeed'] * abs(x['TempDelta'])) / 1000 if 'Belgian' in x['Event']\n", " else 0, axis=1)\n", " \n", " df['AltitudeEffect'] = np.where(\n", " df['Event'].str.contains('Mexico City'),\n", " df['AirTemp'] * (1 - df['Humidity']/200) * df['WindSpeed'] / 10,\n", " 0\n", " )\n", " \n", " df['WeatherStability'] = df.apply(lambda x:\n", " 1 - (abs(x['WindSpeed']) + abs(x['TempDelta']) + x['Humidity'])/300 if 'British' in x['Event']\n", " else 1, axis=1)\n", " \n", " df['TrackCondition'] = df.apply(lambda x:\n", " (x['TrackTemp'] * x['WeatherStability'] * (1 - x['WetWeatherEffect'])) if 'British' in x['Event']\n", " else x['TrackTemp'], axis=1)\n", " \n", " # Rolling averages for weather stability (3-lap window)\n", " df['WindSpeed_Rolling'] = df.groupby('Event')['WindSpeed'].transform(lambda x: x.rolling(3, min_periods=1).mean())\n", " df['Humidity_Rolling'] = df.groupby('Event')['Humidity'].transform(lambda x: x.rolling(3, min_periods=1).mean())\n", " df['TrackTemp_Rolling'] = df.groupby('Event')['TrackTemp'].transform(lambda x: x.rolling(3, min_periods=1).mean())\n", " \n", " # Weather change indicators\n", " df['WeatherChangeRate'] = df.apply(lambda x:\n", " abs(x['WindSpeed'] - x['WindSpeed_Rolling']) + \n", " abs(x['Humidity'] - x['Humidity_Rolling']) + \n", " abs(x['TrackTemp'] - x['TrackTemp_Rolling']) if 'British' in x['Event']\n", " else 0, axis=1)\n", " \n", " return df" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def prepare_modeling_data(df):\n", " \"\"\"\n", " Prepare data for modeling with optimized track-specific configurations.\n", " \"\"\"\n", " data = engineer_features(df)\n", " track_results = {}\n", " \n", " base_features = [\n", " 'TrackTemp', 'AirTemp', 'Humidity', 'WindSpeed',\n", " 'TyreLife', 'TyreDeg', 'TempDelta', 'GripCondition',\n", " 'TrackEvolution', 'TempInteraction', 'TempInteractionSquared',\n", " 'WeatherComplexity', 'DesertEffect', 'WetWeatherEffect', 'AltitudeEffect',\n", " 'WeatherStability', 'TrackCondition', 'WeatherChangeRate',\n", " 'WindSpeed_Rolling', 'Humidity_Rolling', 'TrackTemp_Rolling'\n", " ]\n", " \n", " track_configs = {\n", " 'default': {\n", " 'n_estimators': 300,\n", " 'max_depth': 7,\n", " 'learning_rate': 0.005,\n", " 'min_child_samples': 25,\n", " 'subsample': 0.8,\n", " 'colsample_bytree': 0.8,\n", " 'reg_alpha': 0.2,\n", " 'reg_lambda': 1.5,\n", " 'num_leaves': 35,\n", " 'feature_fraction': 0.8,\n", " 'bagging_fraction': 0.8,\n", " 'bagging_freq': 5\n", " },\n", " # 'British': {\n", " # 'n_estimators': 500,\n", " # 'max_depth': 8,\n", " # 'learning_rate': 0.002,\n", " # 'min_child_samples': 30,\n", " # 'subsample': 0.75,\n", " # 'colsample_bytree': 0.75,\n", " # 'reg_alpha': 0.3,\n", " # 'reg_lambda': 2.0,\n", " # 'num_leaves': 30,\n", " # 'feature_fraction': 0.7,\n", " # 'bagging_fraction': 0.7,\n", " # 'bagging_freq': 7\n", " # },\n", " # 'Bahrain': {\n", " # 'n_estimators': 400,\n", " # 'max_depth': 8,\n", " # 'learning_rate': 0.003,\n", " # 'min_child_samples': 25,\n", " # 'subsample': 0.85,\n", " # 'colsample_bytree': 0.85,\n", " # 'reg_alpha': 0.2,\n", " # 'reg_lambda': 1.5,\n", " # 'num_leaves': 40,\n", " # 'feature_fraction': 0.8,\n", " # 'bagging_fraction': 0.8,\n", " # 'bagging_freq': 5\n", " # },\n", " # 'Belgian': {\n", " # 'n_estimators': 350,\n", " # 'max_depth': 7,\n", " # 'learning_rate': 0.004,\n", " # 'min_child_samples': 20,\n", " # 'subsample': 0.8,\n", " # 'colsample_bytree': 0.8,\n", " # 'reg_alpha': 0.15,\n", " # 'reg_lambda': 1.2,\n", " # 'num_leaves': 35,\n", " # 'feature_fraction': 0.85,\n", " # 'bagging_fraction': 0.85,\n", " # 'bagging_freq': 4\n", " # },\n", " # 'Mexico': {\n", " # 'n_estimators': 400,\n", " # 'max_depth': 8,\n", " # 'learning_rate': 0.003,\n", " # 'min_child_samples': 25,\n", " # 'subsample': 0.8,\n", " # 'colsample_bytree': 0.8,\n", " # 'reg_alpha': 0.25,\n", " # 'reg_lambda': 1.8,\n", " # 'num_leaves': 45,\n", " # 'feature_fraction': 0.75,\n", " # 'bagging_fraction': 0.75,\n", " # 'bagging_freq': 6\n", " # },\n", " # 'United': {\n", " # 'n_estimators': 350,\n", " # 'max_depth': 7,\n", " # 'learning_rate': 0.004,\n", " # 'min_child_samples': 20,\n", " # 'subsample': 0.8,\n", " # 'colsample_bytree': 0.8,\n", " # 'reg_alpha': 0.2,\n", " # 'reg_lambda': 1.5,\n", " # 'num_leaves': 38,\n", " # 'feature_fraction': 0.8,\n", " # 'bagging_fraction': 0.8,\n", " # 'bagging_freq': 5\n", " # }\n", " }\n", " \n", " for event in df['Event'].unique():\n", " event_data = data[data['Event'] == event].copy()\n", " config = track_configs.get(event.split()[0], track_configs['default'])\n", " \n", " X = event_data[base_features]\n", " y = event_data['LapTime_seconds']\n", " \n", " mask = ~y.isna()\n", " X = X[mask]\n", " y = y[mask]\n", " \n", " X_train, X_test, y_train, y_test = train_test_split(\n", " X, y, test_size=0.2, random_state=42\n", " )\n", " \n", " preprocessor = Pipeline([\n", " ('imputer', SimpleImputer(strategy='median')),\n", " ('scaler', StandardScaler())\n", " ])\n", " \n", " X_train_processed = preprocessor.fit_transform(X_train)\n", " X_test_processed = preprocessor.transform(X_test)\n", " \n", " models = {\n", " 'Random Forest': RandomForestRegressor(\n", " n_estimators=config['n_estimators'],\n", " max_depth=config['max_depth'],\n", " min_samples_leaf=config['min_child_samples'],\n", " max_features='sqrt',\n", " random_state=42\n", " ),\n", " 'XGBoost': XGBRegressor(\n", " n_estimators=config['n_estimators'],\n", " max_depth=config['max_depth'],\n", " learning_rate=config['learning_rate'],\n", " min_child_weight=config['min_child_samples'],\n", " subsample=config['subsample'],\n", " colsample_bytree=config['colsample_bytree'],\n", " reg_alpha=config['reg_alpha'],\n", " reg_lambda=config['reg_lambda'],\n", " random_state=42\n", " ),\n", " 'LightGBM': LGBMRegressor(\n", " n_estimators=config['n_estimators'],\n", " max_depth=config['max_depth'],\n", " learning_rate=config['learning_rate'],\n", " min_child_samples=config['min_child_samples'],\n", " subsample=config.get('bagging_fraction', 0.8),\n", " colsample_bytree=config.get('feature_fraction', 0.8),\n", " num_leaves=config.get('num_leaves', 31),\n", " bagging_freq=config.get('bagging_freq', 5),\n", " reg_alpha=config['reg_alpha'],\n", " reg_lambda=config['reg_lambda'],\n", " random_state=42,\n", " verbose=-1,\n", " min_data_in_leaf=1\n", " ),\n", " 'Gradient Boosting': GradientBoostingRegressor(\n", " n_estimators=config['n_estimators'],\n", " max_depth=config['max_depth'],\n", " learning_rate=config['learning_rate'],\n", " min_samples_leaf=config['min_child_samples'],\n", " subsample=config['subsample'],\n", " max_features=config['colsample_bytree'],\n", " random_state=42\n", " )\n", " }\n", " \n", " track_results[event] = {}\n", " \n", " for name, model in models.items():\n", " model.fit(X_train_processed, y_train)\n", " y_pred = model.predict(X_test_processed)\n", " \n", " mse = mean_squared_error(y_test, y_pred)\n", " rmse = np.sqrt(mse)\n", " r2 = r2_score(y_test, y_pred)\n", " mae = mean_absolute_error(y_test, y_pred)\n", " \n", " track_results[event][name] = {\n", " 'rmse': rmse,\n", " 'r2': r2,\n", " 'mae': mae\n", " }\n", " \n", " return track_results" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def plot_model_performance(track_results):\n", " \"\"\"\n", " Plot performance metrics for all models across different tracks.\n", " \"\"\"\n", " comparison_data = []\n", " \n", " # Prepare data for plotting\n", " for track, models in track_results.items():\n", " for model_name, metrics in models.items():\n", " comparison_data.append({\n", " 'Track': track.replace(' Grand Prix', ''),\n", " 'Model': model_name,\n", " 'RMSE': metrics['rmse'],\n", " 'R²': metrics['r2'],\n", " 'MAE': metrics['mae']\n", " })\n", " \n", " comparison_df = pd.DataFrame(comparison_data)\n", " \n", " fig, (ax1, ax2, ax3) = plt.subplots(3, 1, figsize=(15, 18))\n", " \n", " sns.barplot(data=comparison_df, x='Track', y='RMSE', hue='Model', ax=ax1)\n", " ax1.set_title('Root Mean Square Error by Track and Model')\n", " ax1.set_xticklabels(ax1.get_xticklabels(), rotation=45)\n", " \n", " sns.barplot(data=comparison_df, x='Track', y='R²', hue='Model', ax=ax2)\n", " ax2.set_title('R² Score by Track and Model')\n", " ax2.set_xticklabels(ax2.get_xticklabels(), rotation=45)\n", " \n", " sns.barplot(data=comparison_df, x='Track', y='MAE', hue='Model', ax=ax3)\n", " ax3.set_title('Mean Absolute Error by Track and Model')\n", " ax3.set_xticklabels(ax3.get_xticklabels(), rotation=45)\n", " \n", " plt.tight_layout()\n", " plt.show()\n", " \n", " print(\"\\nAverage Metrics Across All Tracks:\")\n", " mean_metrics = comparison_df.groupby('Model').agg({\n", " 'RMSE': 'mean',\n", " 'R²': 'mean',\n", " 'MAE': 'mean'\n", " })\n", " print(mean_metrics.round(3))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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iiTp6tWr2rFjh6ZMmaL+/fsrY8aMCeprUmwQeuHCBQUEBMjPz0+Ojsb/xDpixAi98847mj59uooUKSJ/f3/t27dPUuyUNIcPH9aFCxcs29+4cUMHDhxQ8+bNX3gNXuTpa/7o0SO1b99eZ8+e1ahRozRv3jy1bdtWGzdujDdP+JQpUzR27Fh5eXlpxowZatGihaZOnapvv/32mTbOnj2rLl26qEyZMvr222/l7Oz83FqWLl2qkSNH6u2339asWbM0ceJEOTk5afDgwbp69aplO7PZrP79+6thw4aaPXu2KlSooEmTJmnv3r2W9V27dtXPP/+sQYMGafz48Tp8+HCCP3x52ef27du35evrq4MHD8rf318BAQHKnTu3/Pz8tH79est2gwcP1ooVK9StWzdNmzZNoaGh+u677+Id67ffflPHjh3l6uqqadOmadiwYTp48KDat2+viIiIBNUPAACQ3DCdCwAAQBL57bffnplKwc7OTsWKFdPXX39tuUHgmTNntGrVKvXv3189e/aUJFWvXl3ZsmXTkCFDtGfPHtWsWVMTJ05UtWrVNHXqVMvxypcvr4YNG2r+/PkaPHiwihQpIkkqUqSI5ft/07BhQy1dulTHjh1TqVKlJEmbN2/W22+/LVdX13jb/vDDDzp16pS+//57lS1bVpJUq1YttWvXTpMmTdLq1at18+ZNpUmTRkOHDlXFihUlSZUrV9bly5e1fPnyeMeLjo7WvHnz5O7uLkl6+PChhg4dqpMnT1pqeVrr1q1169YtzZs3T6NHj5YkZcyYUTVq1FC7du0sdZnNZs2YMUMNGjTQp59+KkmqWbOmwsLCtHLlyhdelye9zDnZ29vriy++kJubm6TY/xzYu3evpk6dqoYNG1rqePTokSZNmqTGjRv/azj97bffPjfUlaTdu3crR44clsf169eXr69vvG2io6M1dOhQVatWTVLC+pqXl5dl388//1z58+d/4TXy8/OzjAKvVauWzp8/r8DAQNWoUUONGzfWV199pR9++EF9+/aVJK1fv16urq6qX7/+C4/9Ik9f85MnTypHjhz66quvLPOmV6lSRUePHtXBgwclxd6Ad8GCBWrXrp2GDBliuQ4hISE6dOhQvONfunRJHTt2lIeHh7799lu5uLgY1nLp0iV17txZfn5+lmV58uSRj4+Pfv/9d+XKlUtS7AczvXr1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Xbp06t69uyVAf/jwoQ4dOmT5WZUpU0ZOTk768ccf4+27cOFC9evXz/LhStq0aZU2bVq1aNFCnp6eGj16tO7fv//cdu/evatz587J19dXZcqUscx1v2fPHkkv1/erVq2q6Oho7dy507IsMjLypadDSehz+6233tLhw4d16dKleMvXr1+vrFmzKn/+/Jab1T59s9KffvrJ8r27u7vefPNN/fPPP/H6e9GiRRUYGPjK004BAADYGiPRAQAArGzYsGFq2rSpxowZo7Vr16pIkSJq1qyZAgMDFRERocqVK+vkyZMKDAxU5cqVVbNmTdnb22vAgAH65JNP5O/vr/fff193795VYGCg0qdPr06dOkmKHfksST///LPSp0+v4sWLJ6imd955R4sWLVKGDBksQevTfHx8tGTJEnXq1Ek9evRQzpw5tX//fs2ZM0dt27aVk5OTypQpI0kaPXq0mjdvrvv372vJkiU6deqUJCk8PDzePOgvw8HBQZ999pn8/PzUvHlztWnTRoULF9ajR4/0yy+/aOnSperXr59l9POQIUMs16xhw4Y6evRovPmupdibNaZJk0ZfffWV+vfvr4cPHyowMNAy8l/SfzonLy8vvfXWW+rVq5d69eqlwoUL688//1RAQIBq1KjxwulErl+/riNHjjx3naura4J/vnES0tdexbRp02QymZQzZ07973//07lz57RgwYJ42/j4+CggIEAxMTF6//33X6mdhChTpoz+97//6auvvlKdOnV08+ZNzZs3T7dv37b0jUyZMql9+/ZauHChnJ2dLTceXbJkiQYMGPDMzV7t7Oz0+eefy8fHR+PHj9fYsWOfaTdz5szKnTu3li5dqhw5cuiNN97Qvn37LPP0v2iu/ydVrVpVNWrU0Keffqo7d+4od+7cWrRokUJCQp6ZC/9FEvLc7tSpk9avX69OnTqpd+/eypgxo9atW6dff/1V48aNk729vfLnz69WrVpp6tSpio6OVokSJfTDDz/or7/+inesAQMGqHv37ho4cKCaNm0qk8mk+fPn648//rDczBYAACClIUQHAACwskKFCqldu3aaP3++lixZoo4dO2rs2LHKnz+/Vq9erXnz5ilbtmxq166d/Pz8LPMi+/j4KG3atJo1a5b8/Pzk7u6umjVrasCAAZZ5iYsWLarGjRtr6dKl2rt3rzZu3Jigmho2bKh58+bp3XfffWYe5jhubm5aunSpJk+erIkTJ+rBgwfKnTu3Bg4cqM6dO0uSKleurJEjR2rBggXaunWrsmTJosqVKyswMFB+fn46dOjQS90c8Wm1a9fW999/r3nz5mnmzJkKCQmRs7Oz3nzzTU2dOjXeVBsNGzaUg4ODAgICtGHDBpUoUUIDBw7Ul19+adkmXbp0+uabbzR58mT5+fkpd+7c6t27t9atW2fZ5r+ck729vWbPnq2vv/5as2bN0p07d5Q9e3Z17NhRfn5+LzzfuJuIPk/RokUT/PN9UkL62qscc8KECbpw4YKKFSumOXPmPBPYZs+eXcWLF1fGjBmVM2fOV2onIZo1a6bLly9r9erVWrZsmbJnzy4vLy+1bt1aI0aM0JkzZ1SkSBENHjxYWbJk0f/+9z/Nnz9fefLk0bBhw9S6devnHtfDw0Pt27fX/Pnz1bhxY1WtWvWZbb799luNHTtWH3/8sZydnVWkSBHNmDFD48aNU3BwsNq1a5fg8wgMDNSkSZP0zTff6PHjx2rYsKFatmz5zOj5F0nIcztr1qz63//+p8mTJ2vs2LGKiopS8eLF9e2338a7keioUaOUJUsWLVmyRKGhoapZs6Z69OihadOmWbapUaOG5s2bp8DAQPXt21dOTk4qWbKkFixYoHLlyr1U7QAAAMmFXczTd7gBAAAAUqmgoCC1b99eixYtUuXKlW1dzmvlxo0b8vb21pQpU9SgQQNblwMAAAAkGCPRAQAAACSZkydP6scff9S2bduUJ08e1a1b19YlAQAAAC+FG4sCAAAASDKPHz/WggULZDKZNG3atFe6+S0AAABgS0znAgAAAAAAAACAAUaiAwAAAAAAAABggBAdAAAAAAAAAAADhOgAAAAAAAAAABhwtHUBiSk6OlqhoaFycXGRvT2fDwAAAAAAAAAAns9sNuvx48dKnz69HB2No/JUFaKHhobq/Pnzti4DAAAAAAAAAJBCFChQQJkzZzZcn6pCdBcXF0mxJ50mTRobVwMAAAAAAAAASK4ePXqk8+fPW3JlI6kqRI+bwiVNmjRyc3OzcTUAAAAAAAAAgOTuRVODM3E4AAAAAAAAAAAGCNEBAAAAAAAAADBAiA4AAAAAAAAAgAFCdAAAAAAAAAAADBCiAwAAAAAAAABggBAdAAAAAAAAAAADhOgAAAAAAAAAABggRAcAAAAAAAAAwAAhOgAAAAAAAAAABgjRAQAAAAAAAAAwQIj+GvDw8JCHh4f++eefZ9YtWLBAHh4eCggIeKVjBwUFycPDI0HbrlmzRt7e3q/UDgAAAAAAAADYAiH6ayJjxoxau3btM8vXrFkjd3d3G1QEAAAAAAAAAMkfIfprokmTJvrhhx9kNpsty/78809FRkbqzTfftCwzm82aPXu26tatqwoVKsjX11d79+61rL9586Z69Oih8uXL6+2339Yvv/wSr52LFy+qR48eqly5surUqaOpU6cqMjIy6U8QAAAAAAAAAJIAIfpronbt2oqKitL+/fsty1atWiVfX994202fPl1Lly7V119/raCgIHXu3Fm9evXSn3/+KUny9/eXo6Oj9uzZoyVLlmjPnj2WfcPDw9WxY0cVLVpUe/bs0bJly7R///5XnioGAAAAAAAAAGyNEP014ejoqCZNmlimdImIiNC2bdv0/vvvx9tu9erV6t69u0qWLClHR0c1bNhQ3t7eWrVqla5cuaLg4GANGjRI7u7uypkzp3r37m3Z9+eff1ZkZKQGDBggFxcX5cyZU/369dPSpUuteaoAAAAAAAAAkGgcbV0ArMfHx0etWrVSWFiYdu7cqfLlyytr1qzxtrl9+7by5s0bb1mePHl06tQp3bhxQ5KUK1cuy7p8+fJZvr9y5YpCQkL01ltvWZbFxMQoKipKd+7cSYpTAgAAAAAAAIAkRYj+GilevLgKFSqkLVu2aMOGDerQocMz2+TOnVuXLl2Kt+zSpUvKli2bcuTIYXlcuHBhSdL169ct2+XIkUP58uXT1q1bLcvCwsJ0584dZcqUKSlOCQAAAAAAAACSFNO5vGZ8fHz03Xff6dy5c/Ly8npmfYsWLTR79mwdP35cJpNJW7Zs0a5du9SsWTPlypVLNWrU0JdffqnQ0FDdunVLgYGBln3r1Kmjhw8fau7cuYqMjNT9+/c1dOhQ+fv7y87OzpqnCQAAAAAAAACJghD9NdO4cWNduHBBTZs2laPjs/+I0KlTJ7Vp00b+/v6qWLGiZs2apSlTpqhSpUqSpMmTJytdunSqU6eOmjdvrmrVqln2dXd313fffaegoCDVqlVLdevWlb29vWbMmGG18wMAAAAAAACAxGQXExMTY+siEkt4eLhOnjypEiVKyM3NzdblAAAAAAAAAACSqYTmycyJDgAAAAAAALxAhcGLrNLOoYntrdIOgIRjOhcAAAAAAAAAAAykiBD9+PHjatOmjSpWrKgaNWpozJgxioyMtHVZAAAAAAAAAIBULtmH6GazWR999JEaNGiggwcPatWqVdq3b5/mzJlj69IAAAAAAAAAAKlcsg/RQ0NDdevWLZnNZsXdA9Xe3l5p0qSxcWUAAAAAAAAAgNQu2d9YNGPGjOrYsaPGjx+vCRMmyGQy6e2331bHjh0N9zGZTDKZTNYrEgAAAAAAAEgEZFqA9ST0+ZbsQ3Sz2SxXV1eNGDFCvr6+unDhgnr37q1vvvlG/fv3f+4+p0+ftm6RAAAAAAAAQCI4cuSIrUsA8JRkH6Lv2LFD27Zt09atWyVJRYsWlZ+fn8aOHWsYohcrVkxubm5WrBIAAAAAAACp2vLjVmmmXLlyVmkHgBQeHp6gAdnJPkS/du2aIiMj4y1zdHSUk5OT4T4ODg5ycHBI6tIAAAAAAACAREWmBVhPQp9vyT5Er1GjhiZPnqyZM2eqW7duunr1qmbMmKEmTZokyvErDF6UKMdJqEMT21u1PbycBw8eKCoqSpkyZbJ1KQAAAAAAAACSAXtbF/AiRYoU0axZs7Rr1y5VrlxZ7du3l7e3t/z9/W1dmlV4e3urdOnS8vT0lKenp8qVK6fy5curTZs2OnHiRJK2u2bNmiQ7fpw1a9aoePHilvN78isoKCjJ239avXr19Pfff1u9XQAAAAAAAADJU7IfiS5J1apVU7Vq1Wxdhs18/vnn8vHxsTy+ffu2Pv30U/Xu3Vs7d+6UvX2y/yzkX+XKlUu7du2ydRmSpLt379q6BAAAAAAAAADJSMpOX19TWbJkUatWrXTlyhXdu3dPkvT777+rffv2qlGjhkqXLi0fHx/L3ZyDgoLk7e2tGTNmqGbNmqpUqZL69OmjsLAwSVJMTIxmzpypGjVqqGLFiho/frxMJpOlvYiICE2YMEFeXl5666231K5dO/3555+W9R4eHlqxYoUaNGigsmXLqkePHjp27Jg++OADeXp6qnnz5rpw4cIrn29wcLDatGmjihUrytvbW9OmTbPMkx8QEKDOnTurefPmqlSpkn777TeFhYVp9OjR8vLyUtWqVeXv76/bt29bjhcQECAvLy9VqlRJzZs3148//ihJatCggSSpW7dumjNnzivXCwAAAAAAACD1IERPga5du6YlS5aodOnSypQpkyIiItSzZ081aNBAe/bsUVBQkPLly6cJEyZY9rly5Ypu3LihHTt2aOXKlTp8+LCWLVsmSVq9erUWLlyoWbNmaf/+/XJyctL169ct+3722Wfat2+fFi1apF9++UV169ZVx44ddfXqVcs2GzZs0IoVK7Rjxw4dOnRIvXr10tixY/XLL7/I2dlZM2fOfKVz/eeff9SpUyfVr19f+/fv14IFC7Rr165453bgwAENGjRIP/30kzw9PTVs2DBduHBBa9as0c6dO+Xu7q7evXsrJiZGv/76q1asWKGVK1cqKChILVq00PDhwxUVFaVt27ZJkubMmaNu3bq9Ur0AAAAAAAAAUhdC9BTg888/V8WKFVWuXDmVLFlSbdu2VdGiRS2jpZ2cnLRixQq1bt1akZGRunLlijJkyKAbN27EO46fn59cXV2VP39+Va5cWefOnZMk/fDDD2rZsqVKliwpZ2dn9evXTxkzZpQkPX78WBs3btTAgQOVP39+OTs7q0OHDipUqJA2btxoOXbbtm2VIUMGZcuWTUWLFlX9+vVVuHBhubm5qUqVKrpy5Yrh+V29elUVK1aM9zVt2jRJseG8h4eHOnToIGdnZ+XPn18DBw7UypUrZTabJUl58+ZV1apVlTZtWoWGhmrbtm0aPny4MmfOrLRp02rYsGE6evSojh8/LhcXF4WGhur777/XiRMn1KJFCx04cEBOTk6J9vMCAAAAAAAAkHqkiDnRX3ejRo2Sj4+PIiMjtWjRIs2cOVNeXl6WoNvBwUFBQUHq1q2bwsPDVaRIETk6OiomJibecbJmzWr53snJybL+5s2bypkzp2Wdg4ODcuXKJUkKDQ1VVFSU8uTJE+9YefLk0eXLly2PM2TIEG//9OnTWx7b29s/U8uT/m1O9Dt37ihv3rzPtB0REaE7d+5IkrJly2ZZFxfWt2zZMt4+Dg4Ounz5st555x0FBARo8eLFmjt3rlxdXdWuXTv17Nkzxc8tDwAAAAAAACDxEaKnIM7OzuratatCQ0PVq1cv/e9//1Px4sX1xx9/6IsvvtDy5ctVqlQpSdL8+fMtI81fJEeOHLp06ZLlcUxMjG7evCkpdv51FxcXXbp0SYULF7Zsc/HiRXl7e1se29nZJcYpPiN37tzavn17vGUXL16Us7OzJah/su3s2bNLkrZs2RLvQ4MzZ84ob968unr1qjJnzqx58+YpMjJSBw4cUO/evVWyZEnVrl07Sc4BAAAAAAAAQMrF0NsUqH///vLw8NCAAQMUERGhBw8eyN7eXq6urpKkI0eOaNGiRZabb75IixYt9P333+vw4cOKiorSjBkzdOvWLUmxo8ibN2+uKVOm6MKFC4qMjNTChQt15swZNWrUKMnOMU6jRo109uxZLVy4UJGRkbp48aKmTJmiJk2ayNnZ+Znts2fPrtq1a2vs2LG6e/eu5Xx8fX11//59HT16VF27dtWpU6fk7OyszJkzS5JlVL+zs7MePHiQ5OcFAAAAAAAAIGVgJHoK5ODgoIkTJ+r999/X+PHjNXLkSLVu3Vpt2rSR2WxWnjx51K5dO02ePFm3b99+4fEaN26su3fvyt/fX6GhoXrnnXfk4eFhWT9kyBAFBASoY8eOunfvnjw8PDRv3jwVLFgwKU9TUuzULXPnztWUKVMUEBAgV1dXNW7cWP379zfcZ8KECZo8ebLef/99hYWFqWjRopo7d66yZs2qBg0a6Pz58+rZs6fu3r2rzJkza9iwYSpbtqwkqVWrVho4cKA6duwof3//JD8/AAAAAAAAAMmbXcy/TVadwoSHh+vkyZMqUaKE3NzcbF0OAAAAAAAAUokKgxdZpZ1DE9tbpR0ACc+Tmc4FAAAAAAAAAAADhOgAAAAAAAAAABggRAcAAAAAAAAAwAAhOgAAAAAAAAAABgjRAQAAAAAAAAAwQIgOAAAAAAAAAIABQnQAAAAAAAAAAAwQogMAAAAAAAAAYIAQHVZz/vx5W5cAAAAAAAAAAC/F0dYF2NrF0aWt2l6+kUcTvO25c+fk6+urjz76SN27d7csDwkJUYsWLdSsWTP17t1bjx490vz587V161ZduXJFMTExKly4sHx8fPThhx/Kzs5OkuTh4SEXFxc5ODgoJiZGTk5OqlixokaOHKmcOXMm+rk+6cSJE2rZsqWOHTuWpO0AAAAAAAAAQGJiJHoyVrBgQY0fP15ff/21Dhw4IEmKjIyUn5+fSpUqJT8/P4WHh6tVq1bau3evPvvsM+3fv1/79+/XkCFDtGDBAk2ePDneMefMmaPDhw/ryJEj+umnnxQTE6PBgwcn+bk8ePBAUVFRSd4OAAAAAAAAACQmQvRkrm7duuratav8/f117do1jRo1ShEREfrqq69kZ2enWbNm6eHDh5o/f74qVKggV1dXpUmTRpUqVdL48eOVIUMGw2O7u7s/Mzr87t27GjFihGrUqKHKlSvro48+ijcNy19//aVu3bqpUqVKqlWrlj777DM9ePBAkhQWFiZ/f39VrlxZ1atXV5cuXXT27FldunRJ3bp1kyR5enrq8OHDSXKtAAAAAAAAACCxEaKnAP369VPJkiXVunVr7dmzR99++63SpEkjSdq8ebOaNm0qNze3Z/YrX768unbtanjc0NBQbdq0SfXr17cs69u3ry5evKi1a9dq9+7dKlSokDp27KiwsDDdvXtX7du3V5EiRbRnzx6tXr1a586d05AhQyRJ8+fPV1hYmHbv3q2ffvpJWbNm1aRJk5Q3b17NmTNHknT48GF5enom5uUBAAAAAAAAgCTz2s+JnhLY29urZcuW6tu3rxo1ahRv/vLr168rR44clseRkZGqVq2aJCkmJkaRkZHaunWrcufOLUnq0aOHHBwcZDab9fDhQ6VLl06zZs2SJF26dEkHDx7Upk2blDVrVknSoEGDtGHDBu3evVuPHj2Sk5OTBg0aJAcHB7m6umrEiBFq1KiRbt26JVdXV506dUrr1q1T9erVNW7cONnb8zkNAAAAAAAAgJSLhDMFuHjxokaOHKmOHTtqx44d+v777y3rsmbNqhs3blgeOzs7Kzg4WMHBwfrhhx8UGRmpmJgYy/qZM2cqODhYv//+u/744w/17NlTHTp00PHjx3X79m1JUt68eS3bOzg4KGfOnLpy5Yru3LmjXLlyycHBwbI+T548kqQrV66oW7du6tKli1atWqUGDRro3Xff1fbt25PsugAAAAAAAABAUiNET+bCwsLUs2dP1a5dW5988olGjBih0aNH648//pAkNWjQQBs3btSjR49e+tiurq7q0qWL0qZNq/3791tGq1+8eNGyjclk0tWrV5U1a1blzp1bV69elclksqyP2zZr1qz666+/5O3trVWrVikoKEg+Pj7y9/e3zJkOAAAAAAAAACkNIXoyZjabNWjQILm4uGj06NGSpJYtW6pJkybq06ePbt++rd69eytt2rTq0qWLfv/9d5lMJkVHR+vAgQMaPHiw0qVLZ5k//WnR0dFavXq17t+/rwoVKihbtmzy8vLSmDFjdOvWLUVERGjSpEkymUyqU6eOvLy8JEmTJk1SRESEbt26pbFjx6pKlSrKnTu3Vq5cqSFD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b6tly5aSYgdrVq5cWQ0bNtTff/+d6gbiEKK/Jrp3767169dLksLDw/Xjjz9q8+bN2rdvn2Wuqpo1a2rq1KlasWKFxowZY+OKkRSevkFMpUqVNHfuXKVPn147duzQpUuXJEnu7u7q1q2bevfurVy5ctmiVNiIvb29bt26pWXLlql06dLq3r27ChYsqJkzZ6pUqVLq168fQXoKFfemdvr06ZowYYLOnDljGRmQJ08efffddzp37pzat29PkP4aunLlikwmk/bu3RsvNOvXr59q1qyp5cuXa9++fTasELbk4uKixYsXq3379ipdurTGjRunpUuXKnfu3Jo/f7569+6tQoUK6ddff1VkZCQ3GE0hPDw81KBBA61bt0579+5Vhw4dJEl169bVqFGjtGvXLi1dulTnzp2zcaVIjqKjoy1TPt66dUv3799XgQIF1KtXL7Vu3VodOnTQ4sWLlT9/fl2+fFn37t3jv1SSqSdvCli8eHGNHz9ehQoV0vbt2y3L06dPr549eypfvnw6fvy47t27Z4NKkZw9+Z8mccHpyJEj1alTJ02ZMkW7d++2bOvl5aWPPvpIw4YNk5OTk03qxatZt26dxo0bZxk44ebmpgcPHui3336L9xpfpUoVOTo6proPSZgT/TVx/PhxlSxZUitXrlSLFi0UFhamXr16yc7OTn369FH58uVlb2+v6OhoHTx4UDly5FChQoVsXTYSUdwc12azWVOmTNGdO3fUqlUrlStXTj///LM+++wzNWjQQG3btlXevHklMTf+6ybu5718+XLNnz9f4eHhWr58ufLkyWPZpnfv3tq5c6d++OEHeXh42LBaJNTTN4t7+PChpk6dqv3796tLly5q0qSJZW7js2fPqn///po9e7Zy5sxpq5JhBXH9Im6eU3t7e126dEmfffaZrl69qsDAQBUuXNiy/cqVK+Xj48O8+a+RsLAwLV26VB999JEuX74sX19fubi4aMiQIfLy8pK7u7uioqJkMpk0ffp0nTx5Ur/88otWrFihMmXK2Lp8/Isnfy9cuXJFS5Ys0eLFi9W7d2/16NHDst3evXvVt29ftWnTRv369SPogMWT91fp1auXwsLCFBkZqVy5cunTTz9VlixZdPz4cf3yyy+6efOm1q1bp0WLFunNN9+0del4Sty9LmJiYhQcHKyQkBA1aNBAp06dUr9+/ZQxY0YtX77csv2DBw8UGRmpzJkz27BqJDdPZg09e/ZURESEHBwcNH/+fEnSmDFjtGLFCk2fPl21atWycbX4Ly5duqQ5c+bo8uXLevfdd9WiRQuNHz9eR44cUY8ePVS1alU5Oztr0aJFWrdunRYsWKD06dPbuuxEQ4ieysX9eO3s7HTixAn5+Pioffv2GjZsmO7fv68ePXrIyckpXpCO1OfJN7rvvfeesmbNqkePHun06dMaP3686tatq59//lljxoxR1apV9dFHH8ULTpG6xb3pefJGcZs3b9Z3332nN998Uz169FCOHDks20+aNEn+/v6EaSnAk3dLX7FihdKlS6e6devK3t5en332mS5duqRmzZqpSZMmlnAkKiqKoCSVi3vO//XXX/riiy+ULl06FS9eXP369dOFCxc0ceJEXbhwQQEBASpQoMBz90Xqt3//fv3xxx/q0qWLbt26pTNnzujXX3/VkSNH1KhRI7333nuWf/WXYoOVGTNm6OrVqxo/frycnZ35ID4ZevL3wqlTpxQREaGsWbNq2bJl+vXXX9W6dWu1aNHCsv3+/fuVO3du5c+f34ZVIzmKu4lorly5NGzYMP3999/q1KmT3n//fY0bN05btmzRxo0blS5dOnXp0kVFixa1dcl4StzfiCaTSW3btlVMTIzu37+v77//Xu7u7jp16pQGDhyoDBkyaOnSpbYuF8nU824uWaNGDcv7yLgPYb788kstXLhQ8+bNU/Xq1W1cNV7Wk38D3LlzR998843++ecfffjhh6pfv7769++vO3fu6PHjxypVqpR27NihefPmpboPTwnRU7G4N8nS/3X43bt3q1evXvrwww/16aef6v79+/Lz89PDhw81YsQIeXp62rhqJCV/f3+5u7vriy++0KVLl9SzZ0/dvn1bY8aMUd26dbVr1y5NnTpVCxYsUJYsWWxdLqwg7rXhzJkzCgwMVLp06fTuu++qWrVqWrNmjdatW6fChQurR48ez9xZmzAteXvyw7NmzZrJ1dVVR48eVaNGjTRw4EBlypTJMuq4QYMG8vX1JTx/DcT9ofP333+rbdu28vX1VUhIiP744w95eXlp6NChunDhgiZNmqRDhw5p9erV/FfCaywyMlL16tVT/fr1NXz4cJnNZo0ePVqnT5/We++9p1atWunUqVMqXry4JGnLli1at26dZs6cSYCeDD35e6FF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1q0bwcHBFClSBKPRyKVLl3BxcaF27doAHDx4kIYNGwKwatUqfvnlF1avXk2GDBmSMmyRD5KuzkVEREREkhEl0EVSpoCAAGbOnEnFihXp3LkzBQoUiJdIz5MnD7Vr12b48OEEBweTOXNmChcunNRhi8g70r9/f4KCgtiwYYN5WkxMDPfu3cNgMJA1a1YyZcrE5MmT+fXXXzl69CgrV65UAl0kiegKXUREREREROQdc3JyYvXq1Xh6erJgwQK6dOliTqRHRUVhY2ND0aJFcXJyMtdFFpGUyc/Pj4cPH7J48WIAIiMjuX79OsOHDycsLIyXL1/yzTff4ObmRqpUqYiIiMDd3Z18+fIlceQiHy4NLCoiIiIiIiKSCPLnz8+MGTO4fv06CxYs4Nq1awDY2NgAsGnTJsLDw8mUKVNShiki71hMTAzh4eE8ffqUn3/+mSVLltCuXTvy58/P+PHjadWqFevWrePFixe0bt2aDh06KIEuksQMprihvkVERERERETknfvtt9/o06cPn376KXXr1qVYsWLs2bMHb29vVqxYwWeffZbUIYrIO/TgwQOaNGlCtmzZCA4OJnv27NStW5c2bdoAEBwcjKenJzNnzsTBwSGJoxURUBJdREREREREJNHdvHmTKVOmcOfOHdKmTYuFhQWjR4+mYMGCSR2aiCSCmzdv8t1335E3b15y5syJs7Ozed6iRYs4ffo0Pj4+pE2bNgmjFJE4SqKLiIiIiIiIJIFnz54RGBiIyWTC0dERe3v7pA5JRJLA8+fPSZcuHVFRUaxduxZvb2/WrFlDgQIFkjo0Efn/lEQXERERERERERFJAg8fPqRhw4Zky5YNJycnbt++zYwZM1TWSSSZURJdREREREREREQkCURFRXH8+HGuXLlC/vz5KV68ONmzZ0/qsETkT5REFxERERERERERERFJgEVSByAiIiIiIiIiIiIiklwpiS4iIiIiIiIiIiIikgAl0UVEREREREREREREEqAkuoiIiIiIiIiIiIhIApREFxERERERERERERFJgJLoIiIiIiIiIiIiIiIJUBJdRERERERERERERCQBSqKLiIiIiIiIiIiIiCTAKqkDEBERERGR/23EiBHs2rULgJiYGKKjo0mdOrV5/qJFiyhduvR/sq1q1arh4eFBkyZN/pP1iYiIiIi875REFxERERFJ5saMGcOYMWMA2Lp1Kz4+Phw5ciSJoxIRERER+TConIuIiIiIyHvs/v37ODs7M3HiRMqUKcPo0aOJiopi0qRJfPXVV5QoUYIKFSowduxYTCYTAOHh4YwZM4YKFSpQunRpOnXqxIMHD15b94kTJyhVqhT79u1L7N0SEREREUk2lEQXEREREUkBXrx4walTp/D09GTFihWcOHGCFStWcOHCBebOncv69ev54YcfgFc92y9fvszWrVs5ffo0H330EX369Im3vmPHjtGnTx+mT5/OV199lRS7JCIiIiKSLKici4iIiIhICtCoUSNsbGywsbGhefPmNG7cGEdHRx4/fkxkZCRp06YlICCAqKgo9uzZw7x588iaNSsAgwcP5s6dO+Z1HTt2jO+++47Jkyfj4uKSVLskIiIiIpIsKIkuIiIiIpICZM6c2fxzREQEY8aM4dy5c2TJkoXPPvsMk8mE0WgkNDSUqKgosmXLZm6fPn16ihQpYn595swZChUqxLZt26hTp06i7oeIiIiISHKjci4iIiIiIimAwWAw/zxs2DBSp07NyZMn2bVrF15eXhiNRgAcHR2xsbHh4cOH5vZBQUFMnDiRyMhIAPr27cvs2bO5cOEC69evT9wdERERERFJZpREFxERERFJYcLCwrC1tcXCwoKwsDAmT55MWFgY0dHRWFhY0KhRI7y9vQkICODly5fMnDmTixcvkipVKgCsra1xcnJi8ODBTJo0ibt37ybxHomIiIiIJB0l0UVEREREUphhw4bh5+dH2bJlqV27NmFhYVSuXJlff/0VgEGDBlG4cGFcXV2pXLkyISEhzJo167X1NG3alDJlyjBw4EBzT3YRERERkQ+NwWQymZI6CBERERERERERERGR5Eg90UVEREREREREREREEqAkuoiIiIiIiIiIiIhIApREFxERERERERERERFJgJLoIiIiIiIiIiIiIiIJUBJdRERERERERERERCQBSqKLiIiIiIiIiIiIiCRASXQRERERERERERERkQQoiS4iIiIiIiIiIiIikgAl0UVEREREREREREREEqAkuoiIiIiIiIiIiIhIApREFxERERERERERERFJgJLoIiIiIiIiIiIiIiIJUBJdRERERERERERERCQBSqKLiIiIiIiIiIiIiCRASXQRERERERERERERkQQoiS4iIiIiIiIiIiIikgAl0UVEREREREREREREEqAkuoiIiIj8Y23btsXZ2TnevwIFClCqVClcXV3Zs2ePue2zZ8/o2rUrtWrVonr16kyYMAGTyZTgukNCQvDy8qJGjRoULlyYsmXL0r59ew4cOJAYu/aveHt74+zs/J+u09fX97Vj/aZ/vr6+/+l2/6xt27a0bdv2nW7j7/qrmO7fv28+Phs2bHhjm+fPn1OkSJH/7BgOGjSIatWq/a1l3sX7RkRERET+PaukDkBERERE3m+fffYZI0eONL+OjY3l0aNHLF++nD59+pAuXTqqVKnC2bNncXBwYN68eTx58oTKlSvTuHFjChYs+No6IyMjadOmDTExMXTq1IncuXPz/Plz9u3bR8+ePRk8eDBubm6JuJdJr1ChQvESwFevXmXMmDGMGDGCQoUKmad/8sknSRHee8HCwoJ9+/bRokWL1+YdOnSIqKioJIhKRERERJI7JdFFRERE5F+xs7OjePHir013cXGhQoUKbNmyhSpVqlCjRg1q1KgBwPbt20mfPj3Zs2d/4zr379/PzZs32b9/P3ny5DFPr1GjBpGRkXh7e9O2bVssLS3fyT4lR38+zi9fvgReJc3fdPzldSVLluTs2bMEBweTMWPGePP27NlDwYIF+eWXX5IoOhERERFJrlTORURERETeCRsbG6ytreNNCwsLo1evXixbtoz58+eTPn36Ny4bGBgI8MZyL126dKFbt27xeg1fuXKFjh07UqpUKcqXL4+npycPHz40z3/8+DGDBw/GxcWFokWL0qxZM7777rt463V2dsbHx4emTZtSqlQp5s6dC4C/vz99+vShbNmyFCtWjPbt23Pt2rW3OgaHDx+mVq1aFClSBFdXV86cOQNATEwMlSpVom/fvq8t89VXXzF48OC3Wn9CqlWrxoQJE2jfvj0lS5ZkxIgRAPj5+eHh4UH58uUpVKgQlStXZty4cURGRpqXjY6OZs6cOdSoUYOiRYtSt25dtmzZkuC2Tpw4QeHChRk8eHCC5XliY2NZuHAh9erVo2jRohQvXpyWLVuajwe8KmXy5ZdfcvToUerXr0/hwoWpVasW27Zti7cuf39/PDw8KFWqFBUrVmTZsmVvfVy+/PJLLCwsXisJFBISwg8//EDdunVfW+b27dv07NmTihUrUrx4cdq2bcuPP/4Yr01oaCiDBw+mXLlylClThilTpmA0Gl9b1+HD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HB0dE5yfopLotra2wKudTp06dRJHIyIiIiIiIiIiIiLJVUREBLdv3zbnlROSopLocSVcUqdOTZo0aZI4GhERERERERERERFJ7v6qNLgKh4uIiIiIiIiIiIiIJEBJdBERERERERERERGRBCiJLiIiIiIiIiIiIiKSACXRRUREREREREREREQSoCS6iIiIiIiIiIiIiEgClEQXEREREREREREREUmAkugiIiIiIiIiIiIiIglQEl1EREREREREREREJAFKoouIiIiIiIiIiIiIJEBJdBERERERERERERGRBCiJ/gFwdnbG2dmZ33///bV5y5Ytw9nZGW9v73+0bl9fX5ydnd+q7datW6lWrdo/2o6IiIiIiIiIiIhIUlAS/QPh4ODAtm3bXpu+detW7OzskiAiERERERERERERkeRPSfQPRP369dmxYwdGo9E87dKlS0RFRfHZZ5+ZpxmNRhYuXEiNGjUoVaoUzZo148SJE+b5jx8/pmvXrpQsWZLq1atz6tSpeNu5e/cuXbt2pVy5clStWpUZM2YQFRX17ndQRERERERERERE5B1QEv0D8cUXXxAdHc3p06fN0zZv3kyzZs3itZszZw5r1qxh1qxZ+Pr68u2339KtWzcuXboEgKenJ1ZWVhw/fpzVq1dz/Phx87Lh4eG4ubmRP39+jh8/ztq1azl9+vQ/LhUjIiIiIiIiIiIiktSURP9AWFlZUb9+fXNJl8jISA4cOECjRo3itduyZQudO3emUKFCWFlZUadOHapVq8bmzZt58OAB58+fp1+/ftjZ2ZE1a1Y8PDzMyx49epSoqCj69OmDra0tWbNmpVevXqxZsyYxd1VERERERERERETkP2OV1AFI4mnSpAktWrQgLCyMw4cPU7JkSTJlyhSvTWBgIDlz5ow3LUeOHPj5+REQEABAtmzZzPM+/vhj888PHjwgODiYMmXKmKeZTCaio6MJCgp6F7skIiIiIiIiIiIi8k4pif4BKVCgAHnz5mXfvn3s2rWL9u3bv9Yme/bs3Lt3L960e/fukTlzZrJkyWJ+nS9fPgAePXpkbpclSxY+/vhj9u/fb54WFhZGUFAQGTNmfBe7JCIiIiIiIiIiIvJOqZzLB6ZJkyYsX76cW7du4eLi8tp8V1dXFi5cyNWrV4mNjWXfvn0cOXKExo0bky1bNipVqoSXlxehoaE8efIE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ysiRI1+Ls0mTJmzbto0WLVqY4546dSpr1qz5D46CiIiIiIiI/JWK3hUTZTunepxKlO2IiIi8a0nSE13+ew8fPjTXJI+TM2fOeK/t7e3NP9vY2ABvHoHWwcEBa2trAgICzNNy587N+fPnOX/+PPPmzSMqKireMjt37uT8+fNcuHCBH3/8kZo1a9K8efN46wCoX78+V65c4datW5w/fx5bW1uKFCnyj/ZZRERERERERERE5F1Lkp7o8t/Lnj07/v7+8ab5+/ubk+V/h5WVFdWqVWPLli00btzYXPf8bdnZ2dGzZ09WrFjBjz/+SJ06dczzMmbMyBdffMH27dt5/Pjx/ywLI/+OepeIiIiIiIiIiIj8e+qJ/h4IDg7m0aNH8f7FxMTEa+Pq6sqhQ4c4ceIEsbGxHDt2jIMHD771NmxsbHj+/Ln59dChQ3n48CEeHh74+flhNBp5+fIlhw8fZuzYsWTKlCnBdb18+ZIVK1aQKlWqN/Yyb9KkCbt27eL777+nfv36bx2jiIiIiIiIiIiISGJTT/T3QO/evV+b9sfBOQGKFCnC6NGjGTVqFCEhIZQuXZoKFSpgbW39VtuoU6cOnp6efPHFFxw9ehQnJyd27tzJkiVL6NevHw8fPsRoNJInTx4aNGhA69at4y1fr149DAYDABYWFhQoUID58+e/VlIGoEqVKrx8+ZLy5cvj4ODwlkdBREREREREREREJPF98En05F6K4vr16wnO++OAq7du3aJo0aJ899138eZnzJgRgIkTJ/7PdZcvX54zZ87Em58uXTp69+79xiR+nBw5cvzPGOMcOXLE/LOVlRWnTsU/7m+KT0RERERERERERCSpqZxLCnHjxg3at2/P3bt3AfD19eXEiRO4uLgkcWQiIiIiIiIiIiIi768Pvid6SvHll19y48YN2rVrR2hoKNmzZ2fs2LGULFkyqUMTEREREREREREReW8piZ6CuLu74+7untRhiIiIiIiIiIiIiKQYKuciIiIiIiIiIiIiIpIAJdFFRERERERERERERBKgci4iIiIiIiIiIvKfO1bFJVG243L8WKJsR0Q+XEqii4iIiIiIiMh/TglUERFJKVTORUREREREREREREQkAUqii4iIiIiIiIiIiIgk4IMv55JYj5fF+VAfM7t9+za5c+dO6jDe6Pnz50RHR5MxY8akDkVERERERERE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G9WqVUv16tVTnz599PPPP1s9/5tvvtErr7wib29vNWvWTFOmTFFsbOwD+7p9+7b+/e9/y9/f/6HLqXz33Xd6/fXX1aBBA9WqVUv+/v4KDg5WSkqKpP9bymTPnj0aPny4vL291aBBA02aNEl37961HCclJUWLFy9Wy5YtVbduXQ0ePNiwtr/KzDXg/v37WrRokZ577jnVrl1bbdq00fLlyy11p9m4caPatm2rOnXq6NVXX9Xly5fT9XH58mWNGjVKvr6+qlu3rnr16qXTp09nqHYAAIDshhAdAAAgi2rfvr1++OEHq4ArLi5Ohw4dUocOHdK1f+utt/TBBx8oMDBQS5cu1XPPPaeZM2dq0aJFljZz5szRokWL1L17d61cuVLTp0/XzZs3NWLECKsg9Pr165o+fbp69uyp5cuXq3Tp0powYYJ+++23h9a8detWNWnSRMWKFVPHjh2VkpKiLVu2PLDt5MmT9dxzz2nRokWqXLmygoKCLAHx8ePHNWbMGLVp00YrVqzQxIkT9e2332r06NGW50+ZMkUzZ86Uv7+/lixZoldeeUUfffSRBg8enOmbgrZs2VKDBg2SlLocSdrSI8uWLdPkyZPVuHFjLV26VK+88opWrFihKVOm/O0xzWazkpKSHvj11zo3bNggT09PBQcH69///rdl+/z58zV+/HiNHz9eXl5e+uyzz/Taa6+pWLFimjdvniZOnKiIiAh1795d0dHRluclJydr6dKleueddzRy5EhVrlzZsM7g4GAVLFhQixYtUufOnbV06VJ98MEHkqQuXbro/v372rt3r9VzPv30Uz333HP/eFmay5cva//+/Zo3b55GjhypAgUKaNy4cdqyZYv69++v1atXa8KECTp79qyCgoIsr1tISIj69u2r/Pnza/78+Ro7dqy+/vprDR8+PF0fd+/eVb9+/XT79m2tW7dOpUuXfmAtZ86cUe/evS3HXLJkierVq6eFCxdq165dVm2nTp2qUqVKafHixerbt6+2bt2qpUuXWva/9957ltdz4cKFKlCggObOnZvh1+VRrgFms1kDBw7UypUr1aVLF8s1YMGCBVbLCX300UeaOnWqmjdvrsWLF6tu3brpli6KiYnRiy++qFOnTmny5MmaO3euUlJS9Morr/ztNQAAACA7YjkXAACALKply5Zyd3fX3r179dprr0mS9u/fr4IFC6p+/fpWbc+fP69PPvlEo0aNUv/+/SVJzZo1k4ODg5YtW6aXX35ZBQoU0LVr1xQUFKQePXpYnuvm5qZhw4bpl19+kbe3t6TUNZdnzJihxo0bS5LKly+vVq1aKSQkRJUqVXpgvb/++qtOnjyp+fPnS5KKFSumpk2b6pNPPlG/fv3k4OBg1X7IkCGWWlu0aKELFy5o4cKFatasmY4fPy5XV1f169dPrq6ukqT8+fPr5MmTMpvN+u2337RlyxaNHDnSEno3bdpURYsW1bhx43To0CH5+fk98mtesGBBlS1bVpJUvXp1lS5dWnfu3NGSJUvUvXt3vfnmm5bXNn/+/HrzzTfVp08fValSxfCY3333nWrWrPnAfbNnz7YKy4sWLaoJEybI0TF1rkvajR5ffPFFPffcc5JSZze/9957atKkieW1lqR69eqpffv2Wr16tcaOHWvZPnDgQLVs2fJvz71x48b6z3/+I0lq3ry54uLitH79er322muqVKmSvL299dlnn6lr166SpB9//FG//fabpk+f/rfH/jtJSUkaP368mjRpIkkymUy6e/euJk+ebLlBra+vr+7evat3331X169fV9GiRfXBBx+oWrVqVh8Uubm5ad68eYqKirJsu3//vgYNGqSrV6/qo48+UpkyZQxrOXPmjJo0aaL33nvP8n1o2rSpDh48qO+++04BAQGWtn5+fho/frzl9fvmm2908OBBjR49Wrdv39aHH36onj17atiwYZbXNSoqSocPH87Q6/Io14BDhw7p6NGjeu+99xQYGGip283NTe+//7569eqlSpUqafHixWrbtq3VWI6Li9PGjRstx1q3bp1u3bqljz/+WKVKlZKU+h5t37693n//fcuHKwAAADkFM9EBAACyKDc3N/n7+1st57Br1y61b98+XSD97bffymw2y9/f32qms7+/v+7fv6/jx49LkubOnavevXsrJiZGERER2rZtm3bs2CFJSkxMtDrmn9euLl68uCQ9dNmOLVu2yMPDQ76+vrp9+7Zu376t5557TpGRkZYZ5n/Wrl07q8etW7fWiRMndPfuXTVo0EAJCQkKCAjQ/Pnzdfz4cTVr1kxDhw6Vg4ODwsLCJMkq0JSk559/Xk5OTpbw+XGIiIjQvXv3HvjaSqnLiTxMzZo1tWXLlgd+/TXor1SpkiW4/TNPT0/Lv8+fP6/r16+n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AAAAkBPYfDmXv3r33XetHkdERFg9bt68uZo3b/7E+q8/dv0TO/aDHH+vp037w6O5c+eOEhMTVbBgQXuXAgAAAAAAACALyHIz0WHN399ftWvXlre3t7y9veXl5aV69erplVde0enTp59ov9u2bXtix0+zbds2VatWzXJ+f/4KDQ194v3/1bPPPqtff/3V5v0CAAAAAAAAyJrsPhMdf2/atGnq1KmT5fGNGzf05ptvaujQofryyy/l6Ph0fxZSsmRJff311/YuQ5J08+ZNe5cAAAAAAAAAIAt5utPXHKpw4cLq3r27Ll26pFu3bkmSvv/+e/Xs2VPNmjVT7dq11alTJ504cUKSFBoaKn9/fy1ZskTNmzeXr6+vhg0bpri4OEmS2WzW0qVL1axZM/n4+GjWrFlKTk629JeQkKDZs2fLz89PDRo0UI8ePfTjjz9a9nt6emrTpk1q27at6tatq4EDB+qnn37Siy++KG9vb3Xu3Fm///57ps83PDxcr7zyinx8fOTv768FCxbIZDJJkoKDg/Xaa6+pc+fO8vX11Xfffae4uDhNnz5dfn5+aty4sYKCgnTjxg3L8YKDg+Xn5ydfX1917txZX331lSSpbdu2kqR+/fppxYoVma4XAAAAAAAAQPZBiP4UunLlij766CPVrl1bBQsWVEJCggYNGqS2bdvq0KFDCg0NVdmyZTV79mzLcy5duqSoqCjt379fmzdvVkREhP773/9KkrZu3ap169Zp2bJlOnr0qHLlyqWrV69anvvWW2/pyJEjWr9+vb755hu1bt1avXv31uXLly1tPv/8c23atEn79+/X8ePHNXjwYM2YMUPffPONXFxctHTp0kyd6//+9z/16dNHbdq00dGjR7VmzRp9/fXXVud27NgxjRkzRgcOHJC3t7feeOMN/f7779q2bZu+/PJL5cmTR0OHDpXZbNa3336rTZs2afPmzQoNDVXXrl01adIkJSYm6osvvpAkrVixQv369ctUvQAAAAAAAACyF0L0p8C0adPk4+MjLy8v1axZU6+++qqqVKlimS2dK1cubdq0SS+//LJMJpMuXbqk/PnzKyoqyuo4Q4YMkZubm8qVK6eGDRvq/PnzkqTPPvtM3bp1U82aNeXi4qIRI0aoQIECkqT79+9r586dGj16tMqVKycXFxf16tVLFStW1M6dOy3HfvXVV5U/f34VLVpUVapUUZs2bVSpUiW5u7urUaNGunTpkuH5Xb58WT4+PlZfCxYskJQaznt6eqpXr15ycXFRuXLlNHr0aG3evFkpKSmSpDJlyqhx48by8PBQbGysvvjiC02aNEmFChWSh4eH3njjDZ08eVKnTp2Sq6urYmNj9cknn+j06dPq2rWrjh07ply5cj227xcAAAAAAACA7IM10Z8CU6dOVadOnWQymbR+/XotXbpUfn5+lqDbyclJoaGh6tevn+Lj41W5cmU5OzvLbDZbHadIkSKWf+fKlcuy/9q1aypRooRln5OTk0qWLClJio2NVWJiokqXLm11rNKlS+uPP/6wPM6fP7/V8/Ply2d57OjomK6WP3vYmujR0dEqU6ZMur4TEhIUHR0tSSpatKhlX1pY361bN6vnODk56Y8//tBzzz2n4OBgffjhh1q5cqXc3NzUo0cPDRo06KlfWx4AAAAAAADA40eI/hRxcXFR3759FRsbq8GDB+vjjz9WtWrV9MMPP+jtt9/Wxo0bVatWLUnS6tWrLTPN/07x4sUVGRlpeWw2m3Xt2jVJqeuvu7q6KjIyUpUqVbK0uXjxovz9/S2PHRwcHscpplOqVCnt27fPatvFixfl4uJiCer/3HexYsUkSXv27LH60ODcuXMqU6aMLl++rEKFCmnVqlUymUw6duyYhg4dqpo1a6ply5ZP5BwAAAAAAAAAPL2YevsUGjlypDw9PTVq1CglJCTozp07cnR0lJubmyTpxIkTWr9+veXmm3+na9eu+uSTTxQREaHExEQtWbJE169fl5Q6i7xz586aN2+efv/9d5lMJq1bt07nzp3T888//8TOMc3zzz+v3377TevWrZPJZNLFixc1b948BQQEyMXFJV37YsWKqWXLlpoxY4Zu3rxpOZ8uXbro9u3bOnnypPr27aszZ87IxcVFhQoVkiTLrH4XFxfduXPniZ8XAAAAAAAAgKcDM9GfQk5OTnrvvffUsWNHzZo1S1OmTNHLL7+sV155RSkpKSpdurR69OihuXPn6saNG397vA4dOujmzZsKCgpSbGysnnvuOXl6elr2jxs3TsHBwerdu7du3bolT09PrVq1ShUqVHiSpykpdemWlStXat68eQoODpabm5s6dOigkSNHGj5n9uzZmjt3rjp27Ki4uDhVqVJFK1euVJEiRdS2bVtduHBBgwYN0s2bN1WoUCG98cYbqlu3riSpe/fuGj16tHr37q2goKAnfn4AAAAAAAAAsjYH88MWq37KxMfH6+eff1b16tXl7u5u73IAAAAAAACQTdQfu94m/Rx/r6dN+gGQ8TyZ5VwAAAAAAAAAADBAiA4AAAAAAAAAgAFCdAAAAAAAAAAADBCiAwAAAAAAAABggBAdAAAAAAAAAAADhOgAAAAAAAAAABggRAcAAAAAAAAAwAAhOgAAAAAAAAAABgjRYTMXLlywdwkAAAAAAAAA8Eic7V2AvV2cXtum/ZWdcjLDbc+fP68uXbpowIAB6t+/v2V7TEyMunbtqhdeeEFDhw7VvXv3tHr1au3du1eXLl2S2WxWpUqV1KlTJ7300ktycHCQJHl6esrV1VVOTk4ym83KlSuXfHx8NGXKFJUoUeKxn+ufnT59Wt26ddNPP/30RPsBAAAAAAAAgMeJmehZWIUKFTRr1iy9//77OnbsmCTJZDJpyJAhqlWrloYMGaL4+Hh1795dhw8f1ltvvaWjR4/q6NGjGjdunNasWaO5c+daHXPFihWKiIjQiRMndODAAZnNZo0dO/aJn8udO3eUmJj4xPsBAAAAAAAAgMeJED2La926tfr27augoCBduXJFU6dOVUJCgt599105ODho2bJlunv3rlavXq369evLzc1NuXPnlq+vr2bNmqX8+fMbHjtPnjzpZoffvHlTkydPVrNmzdSwYUMNGDDAahmWX375Rf369ZOvr69atGiht956S3fu3JEkxcXFKSgoSA0bNlTTpk31+uuv67ffflNkZKT69esnSfL29lZERMQTea0AAAAAAAAA4HEjRH8KjBgxQjVr1tTLL7+sQ4cOafHixcqdO7ckaffu3QoMDJS7u3u659WrV099+/Y1PG5sbKx27dqlNm3aWLYNHz5cFy9e1Pbt2xUSEqKKFSuqd+/eiouL082bN9WzZ09VrlxZhw4d0tatW3X+/HmNGzdOkrR69WrFxcUpJCREBw4cUJEiRTRnzhyVKVNGK1askCRFRETI29v7cb48AAAAAAAAAPDE5Pg10Z8Gjo6O6tatm4YPH67nn3/eav3yq1evqnjx4pbHJpNJTZo0kSSZzWaZTCbt3btXpUqVkiQNHDhQTk5OSklJ0d27d5U3b14tW7ZMkhQZGamwsDDt2rVLRYoUkSSNGTNGn3/+uUJCQnTv3j3lypVLY8aMkZOTk9zc3DR58mQ9//zzun79utzc3HTmzBl9+umnatq0qWbOnClHRz6nAQAAAAAAAPD0IuF8Cly8eFFTpkxR7969tX//fn3yySeWfUWKFFFUVJTlsYuLi8LDwxUeHq7PPvtMJpNJZrPZsn/p0qUKDw/X999/rx9++EGDBg1Sr169dOrUKd24cUOSVKZMGUt7JycnlShRQpcuXVJ0dLRKliwpJycny/7SpUtLki5duqR+/frp9ddf15YtW9S2bVu1a9dO+/bte2KvCwAAAAAAAAA8aYToWVxcXJwGDRqkli1bauLEiZo8ebKmT5+uH374QZLUtm1b7dy5U/fu3XvkY7u5uen111+Xh4eHjh49apmtfvHiRUub5ORkXb58WUWKFFGpUqV0+fJlJScnW/antS1SpIh++eUX+fv7a8uWLQoNDVWnTp0UFBRkWTMdAAAAAAAAAJ42hOhZWEpKisaMGSNXV1dNnz5dktStWzcFBARo2LBhunHjhoYOHSoPDw+9/vrr+v7775WcnKykpCQdO3ZMY8eOVd68eS3rp/9VUlKStm7dqtu3b6t+/foqWrSo/Pz89M477+j69etKSEjQnDlzlJycrFatWsnPz0+SNGfOHCUkJOj69euaMWOGGjVqpFKlSmnz5s0aN26coqOjlSdPHuXJk0fu7u5ycXGRq6urJBGoAwAAAAAAAHiqEKJnYfPnz9eJEye0cOFCSwgtSW+99ZYKFSqkkSNHytXVVZs2bZK/v7/eeecdNWrUSA0aNNDMmTPl6+urvXv3qlChQpbn9uvXT97e3vL29pavr682bNigefPmqV69epKk2bNnq0yZMnrhhRfUpEkT/fLLL1q3bp3y58+vvHnzas2aNTp79qz8/PzUoUMHlSpVSu+//74kadSoUSpXrpyef/551atXT9u2bdPixYvl6uqqqlWrqn79+mrevLlCQkJs+0ICAAAAAAAAQCY5mP+8YPZTLj4+Xj///LOqV68ud3d3e5cDAAAAAACAbKL+2PU26ef4ez1t0g+AjOfJzEQHAAAAAAAAAMAAIToAAAAAAAAAAAYI0QEAAAAAAAAAMECIDgAAAAAAAACAAUJ0AAAAAAAAAAAMEKIDAAAAAAAAAGCAEB0AAAAAAAAAAAOE6AAAAAAAAAAAGCBEBwAAAAAAAADAgLO9C7C3psFNbdrfN8O+sWl/j+L3339XuXLl7F0GAAAAAAAAAGQZzETP4jw9PRUaGvrAfUuXLlXfvn0zdJwJEyZowoQJhvtnzZqlJUuWWG27deuWZs2apbZt28rb21v169fXq6++qt27d1va/PHHH/L09JSXl5e8vb1Vt25dNWrUSGPGjNHt27ct7fz9/eXp6anDhw+n63vfvn3y9PR8aH0AAAAAAAAAYA85fib602zgwIGP7Vg3b960enzt2jV17dpV1atX14IFC1SpUiWZTCaFhYXpjTfeUGxsrF566SVL+507d6p06dKSpBs3bmjQoEGaMWOGZs2aZWlToEABbd++Xc2bN7fqa+vWrcqTJ89jOxcAAAAAAAAAeFwI0Z9iwcHBCgsL04cffihJ2rVrlz744ANFR0erbt26KlmypBITE/Xuu+9KkqKjozV8+HCFhoYqV65cGjhwoF599VUtWrRIn3/+uSTp9OnT2rFjh2bNmqXixYtr0aJFcnJykiS5uLjI399fM2fOVExMjGFdhQsXVmBgoDZu3Gi1PSAgQJs2bdKdO3eUN29eSalh/YkTJ9IF6wAAAAAAAACQFbCcSzYRERGh8ePHa/z48fr222/14osvatu2bVZt0rZ/++23Gj16tN555x1FRUVpyJAhCggIUEBAgHbs2KHk5GTt27dPXbt2tQTof+bv768uXboY1nL9+nXt379fbdq0sdpevXp1VahQwWo5mE8//VTt2rWTm5vbP3wFAAAAAAAAAODxI0TPJrZu3ao2bdrI399fzs7OevbZZ9W6dWurNk2bNlWTJk3k4OCg559/XmazWZGRkemOFRMTI5PJpOLFi1u2XbhwQT4+PvLx8VG9evVUu3Ztq+cEBgbKx8dH3t7eatasmS5evKgOHTqkO3anTp20fft2q7o7d+78T08fAAAAAAAAAJ4IQvRs4sqVKypVqpTVtjJlylg9zp8/v+XfLi4ukqTk5OR0xypQoIBy5cqlqKgoy7by5csrPDxc4eHhWrJkiUwmk9VzduzYofDwcEVEROj48eNq06aNunXrZnUMKXVJl59++knnz59XeHi4XF1d0wXyAAAAAAAAAJBV2CVEP3bsmLp27ap69eqpadOmevvtt5WQkPDAtn379lXt2rXl7e1t+Tp06JCNK876SpUqpcuXL1tt++vjjHJ2dpa/v7+2bt2qlJSUR35+njx5NHz4cMXF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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Average Metrics Across All Tracks:\n", " RMSE R² MAE\n", "Model \n", "Gradient Boosting 4.259 0.726 2.083\n", "LightGBM 3.663 0.806 1.839\n", "Random Forest 4.915 0.644 2.396\n", "XGBoost 4.333 0.717 2.122\n" ] } ], "source": [ "# Execute modeling pipeline\n", "track_results = prepare_modeling_data(merged_data)\n", "\n", "# Visualize results\n", "plot_model_performance(track_results)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Key Findings\n", "\n", "1. **Track-Specific Performance**:\n", " - Best performance achieved on Belgian GP with Random Forest (R² = 0.775)\n", " - Most challenging predictions for British GP (best R² = 0.047)\n", " - Weather conditions appear to have strongest influence at Belgian GP\n", "\n", "2. **Model Comparison**:\n", " - Random Forest consistently performs best across tracks\n", " - XGBoost shows high variance in performance\n", " - Gradient Boosting provides most stable results\n", "\n", "3. **Important Features**:\n", " - Track temperature and air temperature interaction\n", " - Track evolution throughout race\n", " - Weather complexity score\n", " - Tire degradation metrics\n", "\n", "## Next Steps for Improvement\n", "\n", "1. **Feature Engineering**:\n", " - Create more sophisticated tire degradation models\n", " - Incorporate historical track performance data\n", " - Develop track-specific feature sets\n", "\n", "2. **Model Optimization**:\n", " - Implement GridSearchCV for hyperparameter tuning\n", " - Test neural network approaches\n", " - Create track-specific model ensembles\n", "\n", "3. **Analysis Refinement**:\n", " - Investigate poor performance on British GP\n", " - Analyze weather condition thresholds\n", " - Study interaction effects between features" ] } ], "metadata": { "kernelspec": { "display_name": "csci349", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.13" } }, "nbformat": 4, "nbformat_minor": 2 }