Proyecto de aprendizaje no supervisado que aplica K-Means y PCA para segmentar 167 países según sus indicadores socioeconómicos y de salud, con el objetivo de identificar los países más necesitados e informar la estrategia de inversión humanitaria de la Fundación Ortega.
Amancio Ortega quiere dejar un legado y ha contactado con el IES de Teis para que le ayudemos a identificar los países más necesitados del mundo. A partir de un dataset con información socioeconómica y sanitaria de 167 países, aplicamos técnicas de clustering no supervisado para categorizarlos y ayudar a la Fundación Ortega a decidir dónde abrir hospitales, escuelas y comedores sociales.
El dataset contiene 167 países y 9 variables numéricas, sin ningún valor nulo:
| Variable | Descripción |
|---|---|
mort_inf |
Nº de niños menores de 5 años muertos por cada 1.000 nacimientos |
exportaciones |
Exportaciones de bienes y servicios per cápita (% del PIB) |
salud |
Gasto total en salud per cápita (% del PIB) |
importaciones |
Importaciones de bienes y servicios per cápita (% del PIB) |
ingresos |
Ingresos netos por persona |
inflacion |
Tasa de crecimiento anual del PIB total |
esp_vida |
Esperanza de vida promedio al nacer |
num_hijos |
Número medio de hijos por mujer |
pib |
PIB per cápita |
- K-Means — algoritmo principal de clustering, con k=3 determinado mediante el Método del Codo y el Silhouette Score.
- PCA (Análisis de Componentes Principales) — reducción de dimensionalidad de 9 a 5 componentes, conservando el 94.5% de la varianza.
- Importación del dataset y análisis inicial
- EDA: distribuciones, correlaciones y detección de outliers
- Preprocesado: estandarización con
StandardScaler - Determinación del k óptimo (Elbow + Silhouette)
- Entrenamiento del modelo K-Means final (k=3)
- Análisis de componentes principales (PCA)
- Visualización 2D de los clústeres
- Visualización geográfica con GeoPandas
- Conclusiones e informe para la Fundación Ortega
El modelo identifica tres grupos de países con perfiles claramente diferenciados:
| Clúster | Perfil | Nº países | Mortalidad inf. | Esperanza de vida | PIB/hab | Prioridad |
|---|---|---|---|---|---|---|
| Clúster 1 | Desarrollados | ~50 | ~5‰ | ~80 años | ~42.000$ | Sin intervención |
| Clúster 0 | En desarrollo | ~70 | ~22‰ | ~72 años | ~6.500$ | Intervención secundaria |
| Clúster 2 | Subdesarrollados | ~47 | ~95‰ | ~59 años | ~1.800$ | Prioridad máxima |
La recomendación principal es que la Fundación Ortega concentre sus recursos en el Clúster 2, formado principalmente por países del África Subsahariana, donde la mortalidad infantil es 19 veces mayor que en los países desarrollados y la esperanza de vida es 21 años inferior.
El mapa mundial generado con GeoPandas muestra la distribución geográfica de los tres clústeres:
git clone https://github.com/Tresssco/Unsupervised-Learning-Country-Clustering.git
cd Unsupervised-Learning-Country-Clusteringpython -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windowspip install -r requirements.txtjupyter notebook notebook.ipynb- Python 3.x
- Pandas / NumPy
- Scikit-learn
- Matplotlib / Seaborn
- GeoPandas
- Jupyter Notebook
Jorge Escolano González
IES de Teis — Vigo
Módulo: Machine Learning
