An interactive Streamlit web application that forecasts county-level Electric Vehicle (EV) adoption for the next 3 years using historical data and machine learning.
This project was developed as part of AICTE Internship Cycle 2.
- County Selection – View historical & forecasted EV adoption trends for any county.
- 3-Year Forecast – Predict cumulative EV adoption using a trained regression model.
- Multi-County Comparison – Compare adoption growth across up to 3 counties.
- Growth Insights – Display forecasted growth percentages.
- Downloadable Forecast – Export forecast data as CSV.
- Python – Core programming language.
- Pandas & NumPy – Data preprocessing & feature engineering.
- scikit-learn & Joblib – Machine learning model training and persistence.
- Streamlit & Matplotlib – Interactive UI & visualization.
- OS & Caching – File handling and
st.cache_datafor performance.
- Data Collection – Load historical EV adoption data.
- Feature Engineering – Create lag, rolling average, and growth rate features.
- Model Training – Train and validate a Random Forest Regressor model.
- Forecasting – Predict EV adoption trends for the next 36 months.
- Deployment – Build an interactive Streamlit dashboard with export options.
- Perform data preprocessing & feature engineering for time-series forecasting.
- Train and deploy a machine learning regression model.
- Visualize historical vs forecasted trends interactively.
- Enable multi-county comparisons with growth metrics.
- Build a robust, user-friendly web app.
📁 EV-Adoption-Forecast
- app.py # Main Streamlit app
- forecasting_ev_model.pkl # Trained ML model
- preprocessed_ev_data.csv # Preprocessed dataset
- requirements.txt # Dependencies
- README.md # Project documentation
- images/ # Images for app UI