Machine Learning Forecasting of Agricultural Production and Food Distribution in Ghana
# Machine Learning Forecasting of Crop Production and Food Prices in Ghana
## Overview
Statistical and machine-learning models forecasting crop production and staple-food prices in Ghana. Compares ARIMA, simple benchmarks (Naïve, Drift), and machine-learning models (Ridge, Random Forest), selecting the best-performing approach per crop based on out-of-sample validation rather than in-sample fit.
Four staple crops: Maize, Cassava, Rice, Yams.
## Objectives
- Forecast production for selected staple crops in Ghana.
- Forecast staple-food prices using historical and socioeconomic data.
- Compare statistical and machine-learning forecasting models.
- Provide data-driven recommendations for policymakers.
## Tools
R, Python/Jupyter, VS Code, Git and GitHub.
## Project Status
### Phase 1: Project Setup
Repo and folder structure created; Git and Jupyter notebooks initialized.
### Phase 2: Data Collection
Sourced FAOSTAT crop-production data, checked availability and coverage, selected the four study crops.
### Phase 3: Data Cleaning
Cleaned raw data, standardized crop names and formats, reshaped into analytical structure, saved cleaned dataset.
### Phase 4: Exploratory Data Analysis
Examined structure and descriptive statistics; production, harvested area, and yield across crops; trends, relationships, correlations.
### Phase 5.1: Crop-Specific Dataset Preparation
Separate datasets built for Maize, Cassava, Rice, Yams. Chronologically sorted, checked for year continuity and missing observations, saved as forecasting datasets.
### Phase 5.2: Time-Series Diagnostics
Constructed annual series per crop. ADF and KPSS tests for stationarity, Ljung-Box for serial dependence, ACF/PACF to inform ARIMA specification. Reassessed after first differencing; log-transform plus differencing checked for scale/growth effects. Diagnostics run independently in R and Python as a cross-check, with Python as the main modelling environment going forward. No seasonal decompositio …