Machine Learning system to predict power outages in Kenya...
# ⚡ Kenya Power Outage Prediction System
Machine Learning system to predict power outages in Kenya using historical data, weather patterns, and grid information.
## 🎯 Project Overview
- **Student:** Hope Williams
- **Institution:** JKUAT
- **Program:** BSc. Data Science and Analytics
- **Duration:** 3 months (Feb - Apr 2026)
## 📊 Features
- Predict power outages 1-24 hours in advance
- Estimate outage duration
- Forecast electricity load demand
- Web-based dashboard
- SMS alerts (optional)
## 🛠️ Tech Stack
- **Python 3.10**
- **Machine Learning:** XGBoost, Prophet, Scikit-learn
- **Data Sources:** EPRA, Kenya Power, OpenWeatherMap
- **Web Framework:** Flask
- **Deployment:** Render/Heroku
## 📁 Project Structure
```
├── data/ # Data storage
│ ├── raw/ # Raw data from sources
│ ├── processed/ # Cleaned data
│ └── external/ # External datasets
├── notebooks/ # Jupyter notebooks for exploration
├── src/ # Source code
│ ├── data_collection/ # Data scraping scripts
│ ├── preprocessing/ # Data cleaning
│ ├── models/ # ML models
│ └── utils/ # Helper functions
├── models/ # Trained model files
├── static/ # CSS, JS, images
├── templates/ # HTML templates
└── requirements.txt # Python dependencies
```
## 🚀 Getting Started
1. Clone the repository
```bash
git clone
github.com
cd kenya-power-outage-prediction
```
2. Create virtual environment
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
3. Install dependencies
```bash
pip install -r requirements.txt
```
4. Set up environment variables
```bash
cp .env.example .env
# Edit .env with your API keys
```
5. Run the application
```bash
python app.py
```
## 📈 Data Sources
- **EPRA:** Official electricity statistics
- **Kenya Power:** Social media announcements
- **OpenWeatherMap:** Weather da …