https://github.com/datalopes1/flight_prices
Projeto de Regressão Linear utilizando o XGBRegressor, com base no dataset Flight Price Prediction de Shubham Bathwal e disponibilizado no Kaggle
https://github.com/datalopes1/flight_prices
machine-learning python regression xgboost xgboost-regression
Last synced: about 2 months ago
JSON representation
Projeto de Regressão Linear utilizando o XGBRegressor, com base no dataset Flight Price Prediction de Shubham Bathwal e disponibilizado no Kaggle
- Host: GitHub
- URL: https://github.com/datalopes1/flight_prices
- Owner: datalopes1
- Created: 2024-05-22T22:09:58.000Z (about 1 year ago)
- Default Branch: datalopes1
- Last Pushed: 2024-08-05T21:05:00.000Z (10 months ago)
- Last Synced: 2025-02-02T13:32:21.306Z (4 months ago)
- Topics: machine-learning, python, regression, xgboost, xgboost-regression
- Language: Jupyter Notebook
- Homepage:
- Size: 41.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Prevendo Preço de Passsagens Aéreas com Machine Learning – Flight Price Prediction ✈️
O dataset [Flight Price Prediction](https://www.kaggle.com/datasets/shubhambathwal/flight-price-prediction) disponibilizado por [Shubham Bathwal](https://www.kaggle.com/shubhambathwal) contém dados de reservas aéreas obtidas do website "Easy My Trip". Os dados cobrem o período de 11 de Fevereiro até 31 de Março de 2022, com 300261 registros.

## 1.1. Metas e objetivos
Este projeto tem objetivo de responder algumas perguntas de negócio e criar um modelo de Machine Learning para predição de preços de voos.
### Perguntas de negócio
1. Preço varia de acordo com a Linha Aérea? e com a Classe?
2. Como os preços das passagens são afetados, entre 1 e 2 dias antes da viagem?
3. O preço muda de acordo com o período do dia para chegada e partida?
4. O preço muda de acordo com o destino de partida e chegada?### Resultados
Através de uma breve análise exploratória de dados foram respondidas as perguntas de negócio, e através da modelagem cheguei a um modelo com as seguintes métricas:|Métrica|Resultado|
|--|---|
|Mean Absolute Error|1588.4280|
|Mean Squared Error|8835481.4604|
|Root Mean Squared Error|2972.4537|
|R2 Score|0.9828|### Ferramentas utilizadas
### Features
|Coluna|Descrição|
|-------|--------|
|airline|A linha aérea do voo|
|flight|O código de identificação do voo|
|source_city|A cidade de onde o voo está partindo|
|departure_time|Período do dia em qual o voo partiu|
|stops|Número de paradas entre a partida e o destino|
|arrival_time|Período do dia em que o voo chegou|
|destination_city|A cidade destino do voo|
|class|Classe do voo|
|duration|Duração em horas do voo|
|days_left|Diferença entre o dia da viagem e da reserva|
|price|Preço da passagem|### Bibliotecas Python utilizadas
#### Manipulação de dados
- Pandas, Numpy.
#### EDA
- Seaborn, Matplotlib.
#### Machine Learning
- XGBoost, sklearn, feature_engine.# Exploratory Data Analysis
## Comportamento da variável alvo

## Target, features e as perguntas de negócio
#### 1. Preço varia de acordo com a Linha Aérea? e com a Classe?

Vistara e Air India são as únicas empreas que oferecem o voos de classe Executiva e por isso tem os maiores valores de passagem aérea.
#### 2. Como os preços das passagens são afetados entre 1 e 2 dias antes da viagem?

O preço de passagem aéreas tem tendência de serem maiores quanto mais próximo do voo.
#### 3. O preço muda de acordo com o período do dia para chegada e partida?
A madrugada é o período onde se encontra as passagens mais baratas, já os voos a noite são os mais caros tanto para chegada quanto para partida.
#### 4. O preço muda de acordo com o destino de partida e chegada?
Sim, os pontos de partida e destino tem influência no preço. Delhi é o destino mais barato, seguido por Hyderabad.
## Matriz de correlação
# Modelo de Machine Learning
Escolhi o XGBoost para este projeto, e as métricas resultantes após modelagem e tunagem de hiper parâmetros foram:|Métrica|Resultado|
|--|---|
|Mean Absolute Error|1588.4280|
|Mean Squared Error|8835481.4604|
|Root Mean Squared Error|2972.4537|
|R2 Score|0.9828|
