From ddf7f37f1cffc70a460d1d5313474e5b42370e23 Mon Sep 17 00:00:00 2001 From: cwc023 Date: Tue, 10 Dec 2024 13:12:36 -0500 Subject: [PATCH] Added Modeling --- project/Final_Report.ipynb | 2175 ++++++++++++++++++++++++++++++++---- 1 file changed, 1958 insertions(+), 217 deletions(-) diff --git a/project/Final_Report.ipynb b/project/Final_Report.ipynb index 94c0e3a..8654afe 100644 --- a/project/Final_Report.ipynb +++ b/project/Final_Report.ipynb @@ -51,29 +51,12 @@ }, { "cell_type": "code", - "execution_count": 7, "metadata": { "ExecuteTime": { - "end_time": "2024-12-09T15:24:16.987194Z", - "start_time": "2024-12-09T15:24:16.974515Z" + "end_time": "2024-12-10T17:52:06.150813Z", + "start_time": "2024-12-10T17:52:06.138180Z" } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Python version: 3.10.13 (main, Sep 11 2023, 08:24:56) [Clang 14.0.6 ]\n", - "Pandas version: 2.2.2\n", - "Numpy version: 1.23.5\n", - "Matplotlib version: 3.8.4\n", - "Seaborn version: 0.13.2\n", - "FastF1 version: 3.4.4\n", - "Scikit-learn version: 1.5.1\n", - "XGBoost version: 2.1.1\n" - ] - } - ], "source": [ "# Importing Libraries\n", "import sys\n", @@ -87,17 +70,19 @@ "import fastf1.plotting\n", "from fastf1.ergast.structure import FastestLap\n", "\n", - "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.linear_model import LinearRegression\n", "from sklearn.ensemble import RandomForestRegressor\n", "from sklearn.metrics import mean_squared_error, r2_score\n", - "from sklearn.tree import DecisionTreeRegressor\n", "from sklearn.ensemble import GradientBoostingRegressor\n", - "from sklearn.svm import SVR\n", "import xgboost as xgb\n", - "from sklearn.model_selection import cross_val_score\n", "from sklearn.model_selection import train_test_split, GridSearchCV\n", + "from sklearn.pipeline import Pipeline, make_pipeline\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.metrics import mean_absolute_error\n", + "\n", + "from xgboost import XGBRegressor\n", + "from lightgbm import LGBMRegressor\n", + " \n", "#print versions of libraries\n", "print(f'Python version: {sys.version}')\n", "print(f'Pandas version: {pd.__version__}')\n", @@ -106,8 +91,27 @@ "print(f'Seaborn version: {sns.__version__}')\n", "print(f'FastF1 version: {fastf1.__version__}')\n", "print(f'Scikit-learn version: {sys.modules[\"sklearn\"].__version__}')\n", - "print(f'XGBoost version: {xgb.__version__}')" - ] + "print(f'XGBoost version: {xgb.__version__}')\n", + "print(f'LightGBM version: {sys.modules[\"lightgbm\"].__version__}')" + ], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Python version: 3.10.13 (main, Sep 11 2023, 08:24:56) [Clang 14.0.6 ]\n", + "Pandas version: 2.2.2\n", + "Numpy version: 1.23.5\n", + "Matplotlib version: 3.8.4\n", + "Seaborn version: 0.13.2\n", + "FastF1 version: 3.4.4\n", + "Scikit-learn version: 1.5.1\n", + "XGBoost version: 2.1.1\n", + "LightGBM version: 4.5.0\n" + ] + } + ], + "execution_count": 38 }, { "cell_type": "markdown", @@ -124,14 +128,12 @@ }, { "cell_type": "code", - "execution_count": 8, "metadata": { "ExecuteTime": { - "end_time": "2024-12-09T15:24:17.026610Z", - "start_time": "2024-12-09T15:24:17.013465Z" + "end_time": "2024-12-10T17:42:22.557629Z", + "start_time": "2024-12-10T17:42:22.532022Z" } }, - "outputs": [], "source": [ "# Set up FastF1 plotting and caching\n", "cache_dir = '../data/cache'\n", @@ -140,24 +142,26 @@ "\n", "fastf1.Cache.enable_cache(cache_dir)\n", "fastf1.plotting.setup_mpl(misc_mpl_mods=False, color_scheme=None)" - ] + ], + "outputs": [], + "execution_count": 18 }, { "cell_type": "code", - "execution_count": 9, "metadata": { "ExecuteTime": { - "end_time": "2024-12-09T15:24:17.053839Z", - "start_time": "2024-12-09T15:24:17.050836Z" + "end_time": "2024-12-10T17:42:23.135727Z", + "start_time": "2024-12-10T17:42:23.132572Z" } }, - "outputs": [], "source": [ "# Define years, sessions, and events of interest\n", "years = [2021, 2022, 2023, 2024]\n", "sessions = ['Race']\n", - "events = ['Bahrain Grand Prix', 'British Grand Prix', 'Belgian Grand Prix', 'United States Grand Prix', 'Mexico City Grand Prix'] " - ] + "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']" + ], + "outputs": [], + "execution_count": 19 }, { "cell_type": "markdown", @@ -180,43 +184,13 @@ ] }, { - "cell_type": "code", - "execution_count": 10, "metadata": { "ExecuteTime": { - "end_time": "2024-12-09T15:24:20.703407Z", - "start_time": "2024-12-09T15:24:17.065829Z" + "end_time": "2024-12-10T17:45:57.601953Z", + "start_time": "2024-12-10T17:42:24.338445Z" } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Processing 2021 Bahrain Grand Prix - Race\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "core INFO \tLoading data for Bahrain Grand Prix - Race [v3.4.4]\n", - "req INFO \tUsing cached data for session_info\n", - "req INFO \tUsing cached data for driver_info\n", - "req INFO \tUsing cached data for session_status_data\n", - "req INFO \tUsing cached data for lap_count\n", - "req INFO \tUsing cached data for track_status_data\n", - "req INFO \tUsing cached data for _extended_timing_data\n", - "req INFO \tUsing cached data for timing_app_data\n", - "core INFO \tProcessing timing data...\n", - "req INFO \tUsing cached data for car_data\n", - "req INFO \tUsing cached data for position_data\n", - "req INFO \tUsing cached data for weather_data\n", - "req INFO \tUsing cached data for race_control_messages\n", - "core INFO \tFinished loading data for 20 drivers: ['44', '33', '77', '4', '11', '16', '3', '55', '22', '18', '7', '99', '31', '63', '5', '47', '10', '6', '14', '9']\n" - ] - } - ], + "cell_type": "code", "source": [ "# Get data from FastF1 API\n", "\n", @@ -224,11 +198,6 @@ "weather_data_list = []\n", "lap_data_list = []\n", "\n", - "#Quick Test\n", - "years = [2021]\n", - "events = ['Bahrain Grand Prix']\n", - "\n", - "\n", "# Loop through years and sessions\n", "for year in years:\n", " for event_name in events: \n", @@ -319,8 +288,1319 @@ " by=['Event', 'Year'], # Match within same event and year\n", " direction='nearest',\n", " tolerance=pd.Timedelta('1 min') # Allow matching within 1 minute\n", - ")" - ] + ")\n" + ], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "core INFO \tLoading data for Bahrain Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Bahrain Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '33', '77', '4', '11', '16', '3', '55', '22', '18', '7', '99', '31', '63', '5', '47', '10', '6', '14', '9']\n", + "core INFO \tLoading data for Saudi Arabian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Saudi Arabian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '33', '77', '31', '3', '10', '16', '55', '99', '4', '18', '6', '14', '22', '7', '5', '11', '9', '63', '47']\n", + "core INFO \tLoading data for Dutch Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Dutch Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['33', '44', '77', '10', '16', '14', '55', '11', '31', '4', '3', '18', '5', '99', '88', '6', '63', '47', '22', '9']\n", + "core INFO \tLoading data for Italian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Italian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['3', '4', '77', '16', '11', '55', '18', '14', '63', '31', '6', '5', '99', '88', '47', '9', '44', '33', '10', '22']\n", + "core INFO \tLoading data for Austrian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Austrian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['33', '77', '4', '44', '55', '11', '3', '16', '10', '14', '63', '22', '18', '99', '7', '6', '5', '47', '9', '31']\n", + "core INFO \tLoading data for Hungarian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Hungarian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['31', '44', '55', '14', '10', '22', '6', '63', '33', '7', '3', '47', '99', '9', '4', '77', '11', '16', '18', '5']\n", + "core INFO \tLoading data for British Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 British Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '16', '77', '4', '3', '55', '14', '18', '31', '22', '10', '63', '99', '6', '7', '11', '9', '47', '5', '33']\n", + "core INFO \tLoading data for Belgian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Belgian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['33', '63', '44', '3', '5', '10', '31', '16', '6', '55', '14', '77', '99', '4', '22', '47', '9', '7', '11', '18']\n", + "core INFO \tLoading data for United States Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "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", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['33', '44', '11', '16', '3', '77', '55', '4', '22', '5', '99', '18', '7', '63', '6', '47', '9', '14', '31', '10']\n", + "core INFO \tLoading data for Mexico City Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Mexico City Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['33', '44', '11', '10', '16', '55', '5', '7', '14', '4', '99', '3', '31', '18', '77', '63', '6', '9', '47', '22']\n", + "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n", + "core INFO \tLoading data for São Paulo Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2021 Sao Paulo Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '33', '77', '11', '16', '55', '10', '31', '14', '4', '5', '7', '63', '99', '22', '6', '9', '47', '3', '18']\n", + "core INFO \tLoading data for Bahrain Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Bahrain Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['16', '55', '44', '63', '20', '77', '31', '22', '14', '24', '47', '18', '23', '3', '4', '6', '27', '11', '1', '10']\n", + "core INFO \tLoading data for Saudi Arabian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "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", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '16', '55', '11', '63', '31', '4', '10', '20', '44', '24', '27', '18', '23', '77', '14', '3', '6', '22', '47']\n", + "core INFO \tLoading data for Dutch Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Dutch Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '63', '16', '44', '11', '14', '4', '55', '31', '18', '10', '23', '47', '5', '20', '24', '3', '6', '77', '22']\n", + "core INFO \tLoading data for Italian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Italian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '16', '63', '55', '44', '11', '4', '10', '45', '24', '31', '47', '77', '22', '6', '20', '3', '18', '14', '5']\n", + "core INFO \tLoading data for Austrian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Austrian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['16', '1', '44', '63', '31', '47', '4', '20', '3', '14', '77', '23', '18', '24', '10', '22', '5', '55', '6', '11']\n", + "core INFO \tLoading data for Hungarian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Hungarian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '44', '63', '55', '11', '16', '4', '14', '31', '5', '18', '10', '24', '47', '3', '20', '23', '6', '22', '77']\n", + "core INFO \tLoading data for British Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 British Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['55', '11', '44', '16', '14', '4', '1', '47', '5', '20', '18', '6', '3', '22', '31', '10', '77', '63', '24', '23']\n", + "core INFO \tLoading data for Belgian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Belgian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '55', '63', '14', '16', '31', '5', '10', '23', '18', '4', '22', '24', '3', '20', '47', '6', '77', '44']\n", + "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n", + "core INFO \tLoading data for United States Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 United States Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '44', '16', '11', '63', '4', '14', '5', '20', '22', '31', '24', '23', '10', '47', '3', '6', '18', '77', '55']\n", + "core INFO \tLoading data for Mexico City Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Mexico City Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '44', '11', '63', '55', '16', '3', '31', '4', '77', '10', '23', '24', '5', '18', '47', '20', '6', '14', '22']\n", + "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n", + "core INFO \tLoading data for São Paulo Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2022 Sao Paulo Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['63', '44', '55', '16', '14', '1', '11', '31', '77', '18', '5', '24', '47', '10', '23', '6', '22', '4', '20', '3']\n", + "core INFO \tLoading data for Bahrain Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Bahrain Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '14', '55', '44', '18', '63', '77', '10', '23', '22', '2', '20', '21', '27', '24', '4', '31', '16', '81']\n", + "core INFO \tLoading data for Saudi Arabian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Saudi Arabian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['11', '1', '14', '63', '44', '55', '16', '31', '10', '20', '22', '27', '24', '21', '81', '2', '4', '77', '23', '18']\n", + "core INFO \tLoading data for Dutch Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Dutch Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '14', '10', '11', '55', '44', '4', '23', '81', '31', '18', '27', '40', '77', '22', '20', '63', '24', '16', '2']\n", + "core INFO \tLoading data for Italian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Italian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '55', '16', '63', '44', '23', '4', '14', '77', '40', '81', '2', '24', '10', '18', '27', '20', '31', '22']\n", + "core INFO \tLoading data for Austrian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Austrian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '16', '11', '4', '14', '55', '63', '44', '18', '10', '23', '24', '2', '31', '77', '81', '21', '20', '22', '27']\n", + "core INFO \tLoading data for Hungarian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Hungarian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '4', '11', '44', '81', '63', '16', '55', '14', '18', '23', '77', '3', '27', '22', '24', '20', '2', '31', '10']\n", + "core INFO \tLoading data for British Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 British Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '4', '44', '81', '63', '11', '14', '23', '16', '55', '2', '77', '27', '18', '24', '22', '21', '10', '20', '31']\n", + "core INFO \tLoading data for Belgian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Belgian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '16', '44', '14', '63', '4', '31', '18', '22', '10', '77', '24', '23', '20', '3', '2', '27', '55', '81']\n", + "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n", + "core INFO \tLoading data for United States Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 United States Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '4', '55', '11', '63', '10', '18', '22', '23', '2', '27', '77', '24', '20', '3', '14', '81', '31', '44', '16']\n", + "core INFO \tLoading data for Mexico City Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Mexico City Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '44', '16', '55', '4', '63', '3', '81', '23', '31', '10', '22', '27', '24', '77', '2', '18', '14', '20', '11']\n", + "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n", + "core INFO \tLoading data for São Paulo Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2023 Sao Paulo Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '4', '14', '11', '18', '55', '10', '44', '22', '31', '2', '27', '3', '81', '63', '77', '24', '20', '23', '16']\n", + "core INFO \tLoading data for Bahrain Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Bahrain Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '55', '16', '63', '4', '44', '81', '14', '18', '24', '20', '3', '22', '23', '27', '31', '10', '77', '2']\n", + "core INFO \tLoading data for Saudi Arabian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n", + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Saudi Arabian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '11', '16', '81', '14', '63', '38', '4', '44', '27', '23', '20', '31', '2', '22', '3', '77', '24', '18', '10']\n", + "core INFO \tLoading data for Dutch Grand Prix - Race [v3.4.4]\n", + "req INFO \tNo cached data found for session_info. Loading data...\n", + "_api INFO \tFetching session info data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Dutch Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for driver_info. Loading data...\n", + "_api INFO \tFetching driver list...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for session_status_data. Loading data...\n", + "_api INFO \tFetching session status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for lap_count. Loading data...\n", + "_api INFO \tFetching lap count data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for track_status_data. Loading data...\n", + "_api INFO \tFetching track status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for _extended_timing_data. Loading data...\n", + "_api INFO \tFetching timing data...\n", + "_api INFO \tParsing timing data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for timing_app_data. Loading data...\n", + "_api INFO \tFetching timing app data...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tNo cached data found for car_data. Loading data...\n", + "_api INFO \tFetching car data...\n", + "_api INFO \tParsing car data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for position_data. Loading data...\n", + "_api INFO \tFetching position data...\n", + "_api INFO \tParsing position data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for weather_data. Loading data...\n", + "_api INFO \tFetching weather data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for race_control_messages. Loading data...\n", + "_api INFO \tFetching race control messages...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tFinished loading data for 20 drivers: ['4', '1', '16', '81', '55', '11', '63', '44', '10', '14', '27', '3', '18', '23', '31', '2', '22', '20', '77', '24']\n", + "core INFO \tLoading data for Italian Grand Prix - Race [v3.4.4]\n", + "req INFO \tNo cached data found for session_info. Loading data...\n", + "_api INFO \tFetching session info data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Italian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for driver_info. Loading data...\n", + "_api INFO \tFetching driver list...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for session_status_data. Loading data...\n", + "_api INFO \tFetching session status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for lap_count. Loading data...\n", + "_api INFO \tFetching lap count data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for track_status_data. Loading data...\n", + "_api INFO \tFetching track status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for _extended_timing_data. Loading data...\n", + "_api INFO \tFetching timing data...\n", + "_api INFO \tParsing timing data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for timing_app_data. Loading data...\n", + "_api INFO \tFetching timing app data...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tNo cached data found for car_data. Loading data...\n", + "_api INFO \tFetching car data...\n", + "_api INFO \tParsing car data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for position_data. Loading data...\n", + "_api INFO \tFetching position data...\n", + "_api INFO \tParsing position data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for weather_data. Loading data...\n", + "_api INFO \tFetching weather data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for race_control_messages. Loading data...\n", + "_api INFO \tFetching race control messages...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tFinished loading data for 20 drivers: ['16', '81', '4', '55', '44', '1', '63', '11', '23', '20', '14', '43', '3', '31', '10', '77', '27', '24', '18', '22']\n", + "core INFO \tLoading data for Austrian Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Austrian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['63', '81', '55', '44', '1', '27', '11', '20', '3', '10', '16', '31', '18', '22', '23', '77', '24', '14', '2', '4']\n", + "core INFO \tLoading data for Hungarian Grand Prix - Race [v3.4.4]\n", + "req INFO \tNo cached data found for session_info. Loading data...\n", + "_api INFO \tFetching session info data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Hungarian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for driver_info. Loading data...\n", + "_api INFO \tFetching driver list...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for session_status_data. Loading data...\n", + "_api INFO \tFetching session status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for lap_count. Loading data...\n", + "_api INFO \tFetching lap count data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for track_status_data. Loading data...\n", + "_api INFO \tFetching track status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for _extended_timing_data. Loading data...\n", + "_api INFO \tFetching timing data...\n", + "_api INFO \tParsing timing data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for timing_app_data. Loading data...\n", + "_api INFO \tFetching timing app data...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tNo cached data found for car_data. Loading data...\n", + "_api INFO \tFetching car data...\n", + "_api INFO \tParsing car data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for position_data. Loading data...\n", + "_api INFO \tFetching position data...\n", + "_api INFO \tParsing position data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for weather_data. Loading data...\n", + "_api INFO \tFetching weather data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for race_control_messages. Loading data...\n", + "_api INFO \tFetching race control messages...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tFinished loading data for 20 drivers: ['81', '4', '44', '16', '1', '55', '11', '63', '22', '18', '14', '3', '27', '23', '20', '77', '2', '31', '24', '10']\n", + "core INFO \tLoading data for British Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 British Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '1', '4', '81', '55', '27', '18', '14', '23', '22', '2', '20', '3', '16', '77', '31', '11', '24', '63', '10']\n", + "core INFO \tLoading data for Belgian Grand Prix - Race [v3.4.4]\n", + "req INFO \tNo cached data found for session_info. Loading data...\n", + "_api INFO \tFetching session info data...\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Belgian Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for driver_info. Loading data...\n", + "_api INFO \tFetching driver list...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for session_status_data. Loading data...\n", + "_api INFO \tFetching session status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for lap_count. Loading data...\n", + "_api INFO \tFetching lap count data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for track_status_data. Loading data...\n", + "_api INFO \tFetching track status data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for _extended_timing_data. Loading data...\n", + "_api INFO \tFetching timing data...\n", + "_api INFO \tParsing timing data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for timing_app_data. Loading data...\n", + "_api INFO \tFetching timing app data...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tNo cached data found for car_data. Loading data...\n", + "_api INFO \tFetching car data...\n", + "_api INFO \tParsing car data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for position_data. Loading data...\n", + "_api INFO \tFetching position data...\n", + "_api INFO \tParsing position data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for weather_data. Loading data...\n", + "_api INFO \tFetching weather data...\n", + "req INFO \tData has been written to cache!\n", + "req INFO \tNo cached data found for race_control_messages. Loading data...\n", + "_api INFO \tFetching race control messages...\n", + "req INFO \tData has been written to cache!\n", + "core INFO \tFinished loading data for 20 drivers: ['44', '81', '16', '1', '4', '55', '11', '14', '31', '3', '18', '23', '10', '20', '77', '22', '2', '27', '24', '63']\n", + "events WARNING \tCorrecting user input 'United States Grand Prix' to 'United States Grand Prix'\n", + "core INFO \tLoading data for United States Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 United States Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['16', '55', '1', '4', '81', '63', '11', '27', '30', '43', '20', '10', '14', '22', '18', '23', '77', '31', '24', '44']\n", + "core INFO \tLoading data for Mexico City Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Mexico City Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['55', '4', '16', '44', '63', '1', '20', '81', '27', '10', '18', '43', '31', '77', '24', '30', '11', '14', '23', '22']\n", + "events WARNING \tCorrecting user input 'Sao Paulo Grand Prix' to 'São Paulo Grand Prix'\n", + "core INFO \tLoading data for São Paulo Grand Prix - Race [v3.4.4]\n", + "req INFO \tUsing cached data for session_info\n", + "req INFO \tUsing cached data for driver_info\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Processing 2024 Sao Paulo Grand Prix - Race\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "req INFO \tUsing cached data for session_status_data\n", + "req INFO \tUsing cached data for lap_count\n", + "req INFO \tUsing cached data for track_status_data\n", + "req INFO \tUsing cached data for _extended_timing_data\n", + "req INFO \tUsing cached data for timing_app_data\n", + "core INFO \tProcessing timing data...\n", + "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", + "req INFO \tUsing cached data for car_data\n", + "req INFO \tUsing cached data for position_data\n", + "req INFO \tUsing cached data for weather_data\n", + "req INFO \tUsing cached data for race_control_messages\n", + "core INFO \tFinished loading data for 20 drivers: ['1', '31', '10', '63', '16', '4', '22', '81', '30', '44', '11', '50', '77', '14', '24', '55', '43', '23', '18', '27']\n" + ] + } + ], + "execution_count": 20 }, { "cell_type": "markdown", @@ -349,16 +1629,48 @@ }, { "cell_type": "code", - "execution_count": 14, "metadata": { "ExecuteTime": { - "end_time": "2024-12-09T15:25:18.878045Z", - "start_time": "2024-12-09T15:25:18.858848Z" + "end_time": "2024-12-10T17:46:25.733104Z", + "start_time": "2024-12-10T17:46:25.694313Z" } }, + "source": [ + "# Display a sample of the raw data\n", + "lap_data_combined.head()" + ], "outputs": [ { "data": { + "text/plain": [ + " Time Year Event Session Driver \\\n", + "1 2021-01-01 00:41:37.134 2021 Bahrain Grand Prix Race GAS \n", + "4 2021-01-01 00:48:28.044 2021 Bahrain Grand Prix Race GAS \n", + "5 2021-01-01 00:50:04.721 2021 Bahrain Grand Prix Race GAS \n", + "6 2021-01-01 00:51:41.675 2021 Bahrain Grand Prix Race GAS \n", + "8 2021-01-01 00:54:56.129 2021 Bahrain Grand Prix Race GAS \n", + "\n", + " Team LapNumber LapTime Sector1Time \\\n", + "1 AlphaTauri 2.0 0 days 00:02:22.263000 0 days 00:00:45.220000 \n", + "4 AlphaTauri 5.0 0 days 00:02:11.534000 0 days 00:01:05.748000 \n", + "5 AlphaTauri 6.0 0 days 00:01:36.677000 0 days 00:00:30.990000 \n", + "6 AlphaTauri 7.0 0 days 00:01:36.954000 0 days 00:00:31.176000 \n", + "8 AlphaTauri 9.0 0 days 00:01:37.030000 0 days 00:00:31.256000 \n", + "\n", + " Sector2Time Sector3Time Compound TyreLife FreshTyre \\\n", + "1 0 days 00:01:00.086000 0 days 00:00:36.957000 MEDIUM 5.0 False \n", + "4 0 days 00:00:41.956000 0 days 00:00:23.830000 HARD 1.0 True \n", + "5 0 days 00:00:41.802000 0 days 00:00:23.885000 HARD 2.0 True \n", + "6 0 days 00:00:41.678000 0 days 00:00:24.100000 HARD 3.0 True \n", + "8 0 days 00:00:41.911000 0 days 00:00:23.863000 HARD 5.0 True \n", + "\n", + " SpeedI1 SpeedI2 SpeedFL SpeedST LapTime_seconds \n", + "1 120.0 134.0 182.0 236.0 142.263 \n", + "4 231.0 251.0 275.0 213.0 131.534 \n", + "5 233.0 254.0 275.0 280.0 96.677 \n", + "6 232.0 252.0 274.0 282.0 96.954 \n", + "8 234.0 248.0 276.0 286.0 97.030 " + ], "text/html": [ "
\n", "