The main objective of this project is to analyze the spatiotemporal relationship between flooding and cholera incidence in Uganda from 2011 to 2016 and to assess the influence of sanitation coverage, water coverage, and population on this relationship.
# 🌊 Uganda Flooding & Cholera Hotspot Analysis (2011–2016)
A spatiotemporal analysis of the relationship between flooding, WASH (water, sanitation, hygiene) coverage, and cholera burden across Uganda's 112 districts, with an interactive web dashboard.
**Live Dashboard →**
---
## 📖 Background
Cholera is endemic in Uganda, with recurring outbreaks concentrated in a predictable set of high-risk districts — particularly those near lakes, rivers, and international borders. Flooding is a well-documented driver of outbreaks: it overwhelms pit latrines, contaminates water sources, displaces populations into crowded conditions, and damages WASH infrastructure. Recent outbreaks in Bududa (2019, following landslides), Kayunga (2023, following flooding near the Nile), and Hoima (2015, Lake Albert) all illustrate this pathway directly.
Full background, references, and public health context: **docs_background/BACKGROUND.md**
## ❓ What This Project Does
Using six years (2011–2016) of district-level data on flood occurrence, cholera case counts, population, and WASH coverage, this project:
1. **Reshapes** wide-format annual data into an analysis-ready long format
2. **Computes spatial hotspots** using a LISA-style (Local Indicators of Spatial Association) cluster classification, identifying districts that are both high-burden themselves *and* surrounded by high-burden neighbors
3. **Generates static charts and maps** (time series, top-district rankings, WASH scatter plots, cluster maps, regional breakdowns)
4. **Builds an interactive dashboard** (Leaflet.js + Chart.js) for exploring the map, trends, and full district data table in a browser — no server or build step required
## 📁 Repository Structure
```
uganda-flooding-cholera/
├── data/
│ └── uganda_flooding_cholera.xlsx # Raw source data (112 districts × 19 vars)
├── scripts/
│ ├── analysis.py # Main reproducible analysis pipeline
│ └── district_coords.py # District cent …