Skip to content

Yassir— a ride-hailing app, depend heavily on real-time data and machine learning algorithms to automate and optimize their services. Accurate prediction of the Estimated Time of Arrival (ETA) is crucial for enhancing the reliability and attractiveness of Yassir's services. This shiny application embeds ML models for accurate prediction of ETA.

License

Notifications You must be signed in to change notification settings

D0nG4667/yassir_eta_prediction_shiny_app

Repository files navigation

Yassir Eta Prediction Shiny App

Yassir— a ride-hailing app, depend heavily on real-time data and machine learning algorithms to automate and optimize their services. Accurate prediction of the Estimated Time of Arrival (ETA) is crucial for enhancing the reliability and attractiveness of Yassir's services. This shiny application embeds ML models for accurate prediction of ETA.

Framework

The CRoss Industry Standard Process for Data Mining (CRISP-DM).

Data dictionary

  1. Timestamp: Time that the trip was started
  2. Origin_lat: Origin latitude (in degrees)
  3. Origin_lon: Origin longitude (in degrees)
  4. Destination_lat: Destination latitude (in degrees)
  5. Destination_lon: Destination longitude (in degrees)
  6. Trip_distance: Distance in meters on a driving route
  7. ETA prediction: Estimated trip time in seconds

Notebook size too big for GitHub?

  • Explore visualization on Google Colab ETA.ipynb

FastAPI backend

API

FastAPI Image

Demo video- FastAPI (RESTFul)

  • Coming soon!

Shiny for Python frontend application

client

Shiny Image

Demo video- shiny application

  • Coming soon!

Technologies Used

  • Anaconda
  • Shiny for Python
  • Python
  • Pandas
  • Plotly
  • Git
  • Scipy
  • Sklearn
  • Adaboost
  • Decision tree
  • HistGradientBoost
  • LinearRegression
  • RandomForest
  • GradientBoost
  • XGBoostRegressor
  • Joblib

Installation

Quick install

 pip install -r requirements.txt

Recommended install

conda env create -f yassir-environment.yml

(back to top)

💻 Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

Setup

Clone this repository to your desired folder:

  cd your-folder
  git clone https://github.com/D0nG4667/yassir_eta_prediction_shiny_app.git

Change into the cloned repository

  cd yassir_eta_prediction_shiny_app
  

After cloning this repo,

  • Add an env folder in the root of the project.

  • Create and env file named offline.env using this sample

# API
API_URL=http://api:7860/api/v1/eta/prediction?model

# Google Maps API
MAPS_API_KEY=Your Key

# Redis local
REDIS_URL=redis://cache:6379/
REDIS_USERNAME=default
  • Run these commands in the root of the repo to explore the frontend and backend application:
docker-compose pull

docker-compose build

docker-compose up

Contributions

How to Contribute

  1. Fork the repository and clone it to your local machine.
  2. Explore the Jupyter Notebooks and documentation.
  3. Implement enhancements, fix bugs, or propose new features.
  4. Submit a pull request with your changes, ensuring clear descriptions and documentation.
  5. Participate in discussions, provide feedback, and collaborate with the community.

(back to top)

Feedback and Support

Feedback, suggestions, and contributions are welcome! Feel free to open an issue for bug reports, feature requests, or general inquiries. For additional support or questions, you can connect with me on LinkedIn.

(back to top)

👥 Authors

🕺🏻Gabriel Okundaye

(back to top)

⭐️ Show your support

If you like this project kindly show some love, give it a 🌟 STAR 🌟. Thank you!

(back to top)

📝 License

This project is MIT licensed.

(back to top)

About

Yassir— a ride-hailing app, depend heavily on real-time data and machine learning algorithms to automate and optimize their services. Accurate prediction of the Estimated Time of Arrival (ETA) is crucial for enhancing the reliability and attractiveness of Yassir's services. This shiny application embeds ML models for accurate prediction of ETA.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published