Logo Lanfrica

HenokInTheStars/flight-price-prediction

Type de record:

model
Créateur:
Hen
Hôte:
Regression pipeline predicting Ethiopian Airlines ticket prices (ETB) from route, cabin class, timing, and aircraft type. Compares 11 models (Linear/Ridge/Lasso, SVR, Decision Tree, Random Forest, Gradient Boosting, Extra Trees, AdaBoost, XGBoost, LightGBM) and ships the best one via a Streamlit app. # Ethiopian Airlines Flight Price Prediction Predicting Ethiopian Airlines ticket prices (ETB) from route, cabin class, timing, and aircraft details, using a regression model trained and compared across 11 algorithms. ## Project structure ``` ├── data/ │ └── Ethiopian_Airlines_Dataset.csv # Raw dataset ├── notebooks/ │ └── flight_price_regression.ipynb # Exploratory data analysis ├── src/ │ ├── __init__.py │ ├── preprocessing.py # Cleaning, encoding, scaling │ ├── feature_engineering.py # Derived features │ ├── train.py # Training pipeline │ ├── evaluate.py # Metrics & model selection │ ├── predict.py # Inference │ ├── visualization.py # EDA & evaluation plots │ └── utils.py # Paths, I/O, data inspection ├── models/ │ ├── best_model.pkl # Saved best model │ ├── feature_info.json # Feature metadata │ └── model_metadata.json # Model metadata ├── outputs/ │ ├── figures/ # EDA & evaluation plots │ ├── metrics/ # comparison.csv, CV results │ └── reports/ # Markdown reports ├── app/ │ └── app.py # Streamlit application ├── tests/ │ └── test_preprocessing.py ├── requirements.txt ├── .gitignore └── README.md ``` ## Dataset `data/Ethiopian_Airlines_Dataset.csv` — 22,000 domestic and regional Ethiopian Airlines flights, with columns: `airline, source_city, departure_time, stops, arrival_time, destination_city, destination_country, class, duration, days_left, price, aircraft_type` No missing values or duplicate rows. ## Approach 1. **Preprocessing** (`src/preprocessing.py`) — one-hot encode categorical columns (`drop_first=True`, since cities/times have no natural order), an 80/20 train/test split, and standard scaling for penalty- and distance-based model …