A data engineering & visualization project analyzing healthcare, hunger, and sustainability metrics across 10 African nations (2000-2019).
# Sustainable Development Goals (SDG) Analysis for African Nations
### Dashboard Link:
github.com
## Problem Statement
Ubuntu (fictitious), an NGO operating in Africa, needed to assess the progress of the 10 most populous African countries (Congo, Algeria, Sudan, Egypt, Ethiopia, Nigeria, Kenya, South Africa, Tanzania, Uganda) in achieving key Sustainable Development Goals (SDGs) related to:
- SDG 2: Zero Hunger (Cereal Yield)
- SDG 3: Good Health and Well-being (Maternal Mortality, Under-5 Mortality, Neonatal Mortality, HIV Infections, Tuberculosis Incidence, Chronic Disease Mortality)
- SDG 11: Sustainable Cities and Communities (Access to Improved Water)
- SDG 17: Partnerships for the Goals (Government Spending on Health and Education)
This comprehensive analysis will serve as a foundation for Ubuntu to devise a strategic plan to address any deficiencies and shortcomings in nations that are falling behind in their pursuit of SDG targets.
## Challenges:
- Data scattered across multiple sources (WHO, World Bank, UNICEF, UNAIDS)
- Missing values, inconsistent formats
- Need for automated ETL pipeline for future updates
- Interactive dashboards for policy recommendations
## Methodology
### Data Extraction
- Collected data from World Bank, WHO, UNICEF, UNAIDS, and UN agencies in CSV, Excel, and API formats.
- Used Python (Pandas & Requests) to fetch and merge datasets.
import pandas as pd
import requests
# Example: Fetching World Bank Data via API
def fetch_world_bank_data(indicator, countries):
url = f"
api.worldbank.org"
response = requests.get(url).json()
data = pd.DataFrame(response[1])
return data[['country', 'date', 'value']]
# Example: Loading CSV/Excel files
def load_local_data(file_path):
if file_path.endswith('.csv'):
return pd.read_csv(file_path)
elif file_path.endswi …