# IndabaX Botswana 2026 — VenturePulse Hackathon
## Food Price Inflation Forecasting for Botswana
### Overview
This repository contains my submission for the Deep Learning IndabaX Botswana 2026 Hackathon. The goal was to forecast Botswana's monthly food price inflation (FAO Item Code 23014) for January through December 2024 using five separate datasets at different granularities.
### Files in This Repository
| File | Description |
|------|-------------|
| `predictions_2024.csv` | Final 12-month forecast (ARIMA model) |
| `hackathon_notebook.ipynb` | Full pipeline — data loading, feature engineering, both models |
| `feature_engineering_report.pdf` | Deliverable 1.1b — Justification of all features, lags, and merge strategy |
| `model_comparison_report.pdf` | Deliverable 1.1c — ARIMA vs LSTM comparison and analysis |
| `hcp_linkage_memo.pdf` | Deliverable 1.2a — Policy memo on regional food price dynamics |
| `hcp_visualisations.png` | Deliverable 1.2b — Regional comparison and forecast charts |
### How to Run
#### Requirements
Install the required packages:
```bash
pip install pandas numpy matplotlib xgboost scikit-learn statsmodels torch
Step 1: Data Preparation
Place the five CSV files in the same directory as the notebook:
01_baltic_dry_index_daily.csv
02_brent_crude_monthly.csv
03_botswana_policy_rate.csv
04_fao_botswana_prices.csv
05_human_capital_project.csv
Step 2: Run the Notebook
Open hackathon_notebook.ipynb in Jupyter and run all cells in order:
Cells 1-4: Load and explore all five datasets
Cells 5-7: Feature engineering — extract 10 monthly features from daily BDI, create lag features, merge all datasets
Cell 8: ARIMA classical baseline — train and generate 2024 forecast
Cell 9: LSTM deep learning model — train and generate 2024 forecast
Cell 10: Generate visualisations and save prediction CSV
Step 3: Output
predictions_2024.csv — 12 rows, columns: year_month, forecast
hcp_visualisations.png — Regional comparison and forecast charts
Mo …