Accurately predict Formula 1 qualifying results using machine learning and performance-based heuristics.
Built with FastF1, scikit-learn, and Streamlit.
This is how F1QualiPredictor looks in action
F1QualiPredictor 2025 is a Python-based application that predicts Q3 qualifying times for upcoming Formula 1 races. It combines historical performance data with machine learning and driver/team heuristics to simulate realistic qualifying outcomes.
Built for fans, analysts, and developers who love the intersection of motorsport and machine intelligence.
- Data Collection: Fetches qualifying data from the FastF1 API
- Machine Learning: Predicts Q3 times using various regression models
- Performance Factors: Incorporates driver and team-specific adjustments
- Interactive Dashboard: Visualizes predictions and historical data with F1-inspired design
- Hybrid Prediction: Combines ML and heuristic approaches for accurate results
The application provides a vibrant, F1-themed interface with:
- Predictions Tab: View qualifying predictions with team-colored visualizations
- Data Analysis Tab: Explore historical qualifying data and model performance
- About Tab: Learn about the application and how it works
The application offers several prediction options:
- Hybrid Model: Combines machine learning predictions with performance factors
- ML Only: Uses only machine learning for predictions
- Performance Factors Only: Uses only team and driver performance factors
You can also adjust:
- ML algorithm (Linear Regression, Ridge, Random Forest, Gradient Boosting)
- Weather conditions (Dry, Damp, Wet)
- ML weight vs. performance factors
The application provides several data analysis features:
- Historical qualifying data visualization
- Circuit performance comparison
- Driver and team performance analysis
- Model performance metrics and visualizations
The application uses the FastF1 API to fetch qualifying data from past F1 races. The data includes:
- Driver name and team
- Q1, Q2, and Q3 lap times
- Circuit information
- Session timestamps
Several regression models are available:
- Linear Regression
- Ridge Regression
- Random Forest
- Gradient Boosting
The application incorporates driver and team-specific performance factors to adjust predictions:
- Team performance multipliers
- Driver performance multipliers
- Circuit-specific adjustments
- Weather condition factors
- 🏎 FastF1
- 📊 scikit-learn
- 📈 pandas, numpy, matplotlib, seaborn
- 🖥️ Streamlit
- 🧠 Custom heuristics layer
- Basic ML model (Linear Regression)
- Performance factor integration
- Streamlit dashboard
- Track-specific modifiers
- Weather condition layer
- Simulated quali session builder
- Streamlit Cloud deployment
Check this project out at https://f1-quali-predictor.vercel.app/
