Develop predictive models that integrate rainfall, DEM, and land-use data to map areas at risk of flooding and support early-warning systems.
Here is a README template you can add to your repository for this project:
---
# Flood Susceptibility Mapping Using Machine Learning and Morphometric Analysis
## Overview
This project integrates **Machine Learning (ML)** techniques and **morphometric analysis** to assess flood susceptibility across four major catchments in Bayelsa State, Nigeria. The study leverages **Shuttle Radar Topographic Mission (SRTM)** data to extract hydrological features and applies machine learning classifiers (Random Forest, Support Vector Machine, XGBoost) to classify flood-prone zones. The goal is to enhance flood prediction accuracy and granularity beyond traditional morphometric methods.
## Dataset
The dataset used for this analysis includes key morphometric features, such as:
- Drainage Density (Dd)
- Stream Frequency (Fs)
- Relief Ratio (Rh)
- Bifurcation Ratio (Rbm)
- Infiltration Number (If)
The flood-prone labels are generated from historical flood records, with each catchment marked as either **flood-prone (1)** or **not flood-prone (0)**.
You can access the dataset template for training in `morphometric_ml_dataset.csv`.
## Requirements
Ensure you have the following Python packages installed:
- `pandas`
- `numpy`
- `sklearn`
- `matplotlib`
- `seaborn`
- `xgboost`
You can install them via `pip`:
```bash
pip install pandas numpy scikit-learn matplotlib seaborn xgboost
```
## File Structure
```
├── flood_susceptibility_model.py # Python script for model training and evaluation
├── morphometric_ml_dataset.csv # Dataset template for morphometric features
├── ROC_Comparison.png # ROC Curve comparison figure
├── XGBoost_Confusion_Matrix.png # Confusion matrix for XGBoost model
├── XGBoost_Feature_Importance.png # Feature importance plot for XGBoost model
└── README.md # Project overview and instructions
```
## Usage
### 1. Prepare the Data
Load your dataset in `morphometric_ml_dataset.csv`, ensuring the dataset includes morphom …