This project analyzes disaster data from Figure Eight to build a model for an API that classifies disaster messages. The data set contains real messages that were sent during disaster events. A machine learning pipeline will be created to categorize these events so that you can send the messages to an appropriate disaster relief agency.
Your project will include a web app where an emergency worker can input a new message and get classification results in several categories. The web app will also display visualizations of the data.
-
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/DisasterResponse.db
- To run ML pipeline that trains classifier and saves
python models/train_classifier.py data/DisasterResponse.db models/classifier.pkl
- To run ETL pipeline that cleans data and stores in database
-
Run the following command in the app's directory to run your web app.
python run.py
-
Go to http://0.0.0.0:3001/
- Flask web app: app folder contains a run.py that can be run to start the Flask web server
- ETL Pipleline: data folder contains 2 csv files used in this project and a process_data.py including ETL steps
- Machine Learning Pipeline: model folder contains train_classifier.py file to build a model on the given dataset
This project is a part of Udacity Data Science Nanodegree program. The dataset is obtained from Figure Eight