Skip to content

This projet was intend to apply data engineering skills to analyze disaster data from Figure Eight(Appen) and build a model for an API that classifies disaster messages.

License

Notifications You must be signed in to change notification settings

Gutelvam/Disaster-Response-Pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Disaster Response Pipeline Project

This projet was intend to apply data engineering skills to analyze disaster data from Figure Eight(Appen) and build a model for an API that classifies disaster messages.

In the Project Workspace contain real messages that were sent during disaster events. The challenge was to create a machine learning pipeline to categorize these events so that we can send the messages to an appropriate disaster relief agency.

This project includes a web app where an emergency worker can input a new message and get classification results in several categories. The web app also display visualizations of the data. This project will show off my software skills, including my ability to create basic data pipelines write clean and organized code!

The project was started in 2020 by Gutelvam as an Udacity Nanodegree project, you can check all my public repositories by clicking here: Go to repository.

Below are a few screenshots of the web app.

graph

disaster-categories

Dependencies

Disaster response app requires:

    -Python (>= 3.6)

    -Flask(>= 1.1.2)

    -numpy(>=1.18.4)

    -SciPy(>= 1.4.1)

    -nltk(>=3.5)

    -SQLAlchemy(>= 1.3.20)

    -scikit-learn (>=0.23.1)

    -pandas(>=1.0.3)

    -plotly(==4.14.1)

User installation

If you already have a working installation of Anaconda, the easiest way to install all others packages like Flask, plotly and nltk by using pip:

pip install packagename

Otherwise you can use the comand below to install all requirements needed:

pip install -r requirements.txt

Instructions of usage:

1. Run the following commands in the project's root directory to set up your database and model.

- To run ETL pipeline that cleans data and stores in database
    `python ./data/process_data.py ./data/disaster_messages.csv ./data/disaster_categories.csv  ./data`

- To run ML pipeline that trains classifier and saves
    `python ./models/train_classifier.py ./data/Disaster.db ./models`

2. Run the following command in the root directory to run your web app. python ./app/run.py

3. Go to http://127.0.0.1:3001/

if you have any trouble you can set your own port at: /app/run.py

app.run(host="127.0.0.1", port=3001, debug=True)

About

This projet was intend to apply data engineering skills to analyze disaster data from Figure Eight(Appen) and build a model for an API that classifies disaster messages.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published