1 Introducción

El desarrollo económico y el bienestar social de los países están fuertemente vinculados a la estructura de sus sistemas productivos, aunque dicha relación se aleja de ser uniforme o lineal. Mientras que algunos países han logrado transformar la abundancia de recursos naturales en un impulso para el desarrollo humano y la estabilidad macroeconómica, otros se enfrentan a la denominada “maldición de los recursos” (Sachs & Warner, 1995; van der Ploeg, 2011), en la que aunque se cuenta con una gran riqueza en recursos naturales, suele haber menores índices de desarrollo, un menor crecimiento económico y mayores niveles de conflicto o corrupción asociados con poseer dichos recursos, en contraste con aquellos que tienen limitados recursos naturales o dependen de sectores tradicionales como la agricultura que presentan dinámicas de desarrollo completamente distintas. Esta diversidad plantea un desafío metodológico complicado al intentar catalogar y entender los perfiles de desarrollo global.

El objetivo central de este estudio es identificar si existen países con perfiles socioeconómicos similares que pueden ser agrupados, con el fin de descifrar las variables críticas que marcan sus diferencias. Tomando lo anterior como referencia, se plantea la siguiente pregunta investigativa: ¿El sustento basado en recursos naturales se asocia con un menor bienestar y una mayor inestabilidad, o existen países extractivos capaces de consolidar su desarrollo integral? Analizar este enfoque posee una alta relevancia práctica y teórica, particularmente para economías como la de Colombia, que es un país persistentemente expuesto a los dilemas de la dependencia de productos primarios y la búsqueda de la equidad social. Para abordar esta pregunta se utilizarán técnicas de aprendizaje no supervisado; como el análisis de componentes principales (ACP) y la clusterización jerárquica con el método de Ward que serán aplicadas a un conjunto de 18 indicadores claves correspondientes al año 2019 de World Development Indicators del Banco Mundial (WDI).

El contenido del trabajo inicia con la metodología donde se explica que datos se utilizaron, junto con la justificación de la selección del año del estudio; posteriormente se definen los indicadores y las dimensiones en las que fueron organizados, además de explicar la construcción y las transformaciones hechas a la base de datos empleada; los resultados descriptivos caracterizan los indicadores por dimensión; presentan el ACP y la clusterización de Ward, la caracterización de los grupos obtenidos y una validación con países nuevo; y las conclusiones responden la pregunta de investigación y señalan las limitaciones del análisis.

2 Metodología

2.1 Datos y justificación del criterio de selección del año

Para la investigación se utilizó el World Development Indicators (WDI) del Banco Mundial, consultado en el DataBank, dado que es la fuente internacional más completa de indicadores económicos, sociales y ambientales. Sus series usan definiciones y métodos de cálculo comunes para todos los países, lo que permite compararlos entre sí, y reúnen en un solo lugar los indicadores de rentas de recursos naturales, comercio, estructura productiva y bienestar necesarios para el estudio.

Se seleccionó el año 2019, porque es el último año antes de la pandemia de COVID-19, en donde se alteró el crecimiento del comercio y la inflación en 2020 y 2021. Además, 2019 tiene una buena cobertura de los indicadores de rentas de recursos y comercio, que suelen actualizarse con demora, mientras que en los años más recientes varios indicadores todavía no están publicados. Usar un solo año evita mezclar cambios bruscos y mantiene la comparación entre países en un mismo momento. La base utilizada contiene solamente países y excluye los agregados regionales y bloques económicos, que habrían contado dos veces a los mismos países. Adicionalmente, para el ACP se usaron 18 indicadores de los 20 que se tenían originalmente, y se excluyeron rentas_totales (suma de las rentas del petróleo, gas, carbón, minerales y bosques) e industria (que incluye a la manufactura), para que no hubiera información duplicada.

2.2 Descripción de los indicadores

Los 18 indicadores se agruparon en cuatro dimensiones: rentas de recursos naturales, estructura y desempeño económico, comercio exterior e ingreso y bienestar. Esta combinación permite estudiar si la dependencia de los recursos naturales es una dimensión distinta del nivel de desarrollo de un país.

Tabla 1. Indicadores seleccionados por dimensión (18 en total).

Dimensión N.º Indicadores
Rentas de recursos naturales 5 Rentas del petróleo · Rentas del gas natural · Rentas del carbón · Rentas de minerales · Rentas forestales
Estructura productiva y desempeño macroeconómico 5 Agricultura · Manufactura · Crecimiento del PIB · Inflación · Inversión extranjera directa
Comercio exterior 5 Exportaciones totales · Exportaciones de combustibles · Exportaciones de minerales y metales · Exportaciones de manufacturas · Exportaciones de alta tecnología
Ingreso y bienestar 3 PIB per cápita · Esperanza de vida · Mortalidad infantil

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

2.2.1 Dimensión de rentas de recursos naturales

La inclusión de las rentas de recursos naturales responde a que el objeto de estudio es precisamente la dependencia de los países a la extracción de recursos. Se desagregan las rentas del petróleo, gas, carbón, minerales, y bosques porque cada recurso tiene dinámicas de precios, mercados y consecuencias económicas distintas, y tratarlos como un solo agregado ocultaría esas diferencias. Medirlas como porcentaje del PIB permite comparar economías de tamaños muy diferentes y captar qué tan expuesto está cada una a la variabilidad de los precios de las materias primas.

Tabla 2a. Código WDI y descripción de los indicadores de rentas de recursos naturales.

Código WDI Variable Indicador (unidad)
NY.GDP.PETR.RT.ZS renta_petroleo Rentas del petróleo (% del PIB)
NY.GDP.NGAS.RT.ZS renta_gas Rentas del gas natural (% del PIB)
NY.GDP.COAL.RT.ZS renta_carbon Rentas del carbón (% del PIB)
NY.GDP.MINR.RT.ZS renta_minerales Rentas de minerales (% del PIB)
NY.GDP.FRST.RT.ZS renta_bosques Rentas forestales (% del PIB)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Tabla 2b. Rentas de recursos naturales: descripción e interpretación1

Variable Descripción Interpretación
Rentas del petróleo (% del PIB) Diferencia entre el valor de la producción de petróleo crudo a precios mundiales y sus costos de producción, como porcentaje del PIB. Valores altos: economía muy dependiente del petróleo y expuesta a sus precios. Cercano a 0: sin producción petrolera relevante.
Rentas del gas natural (% del PIB) Diferencia entre el valor de la producción de gas natural a precios mundiales y sus costos de producción, como porcentaje del PIB. Valores altos: economía que depende del gas. Cercano a 0: sin producción relevante. La mayoría de los países tiene valores muy bajos.
Rentas del carbón (% del PIB) Diferencia entre el valor de la producción de carbón a precios mundiales y sus costos de producción, como porcentaje del PIB. Valores altos: economía carbonífera, poco frecuente. Cercano a 0: sin minería de carbón relevante.
Rentas de minerales (% del PIB) Diferencia entre el valor de la producción de una canasta de minerales a precios mundiales y sus costos de producción, como porcentaje del PIB. Valores altos: economía minera, vulnerable a los precios de los metales. Cercano a 0: minería poco importante.
Rentas forestales (% del PIB) Renta generada por la extracción de madera y leña (valor de la producción menos costos), como porcentaje del PIB. Valores altos: peso importante de la explotación forestal, más común en economías de menor ingreso. Cercano a 0: sector forestal marginal.

1 Los umbrales de interpretación son referenciales y pueden variar según el contexto regional y el nivel de desarrollo.

Fuente: Elaboración propia con base en World Bank (2024).

2.2.2 Dimensión de estructura productiva y desempeño macroeconómico

Esta dimensión describe sobre qué base productiva y en qué condiciones macroeconómicas opera cada país. El peso de la agricultura y de la manufactura en el PIB indica el grado de transformación estructural, es decir, si la economía descansa en actividades primarias, industriales o de servicios. El crecimiento del PIB y la inflación reflejan el dinamismo y la estabilidad de precios, aspectos que pueden asociarse con la variabilidad de las economías dependientes de recursos, y la inversión extranjera directa refleja la capacidad de atraer capital y conocimiento del exterior. Esto permite comparar si los países extractivos son capaces de diversificar su economía y mantener su estabilidad.

Tabla 3a. Código WDI e indicadores de estructura productiva y desempeño macroeconómico.

Código WDI Variable Indicador (unidad)
NV.AGR.TOTL.ZS agricultura Agricultura, silvicultura y pesca, valor agregado (% del PIB)
NV.IND.MANF.ZS manufactura Manufactura, valor agregado (% del PIB)
NY.GDP.MKTP.KD.ZG crec_pib Crecimiento del PIB (% anual)
FP.CPI.TOTL.ZG inflacion Inflación, precios al consumidor (% anual)
BX.KLT.DINV.WD.GD.ZS ied Inversión extranjera directa, entradas netas (% del PIB)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Tabla 3b. Descripción e interpretación de la estructura productiva y desempeño macroeconómico.

Variable Descripción Interpretación
Agricultura, silvicultura y pesca, valor agregado (% del PIB) Valor agregado de la agricultura, la silvicultura y la pesca, como porcentaje del PIB. Valores altos: economía de base primaria. Valores bajos: economía industrial o de servicios.
Manufactura, valor agregado (% del PIB) Valor agregado de las industrias manufactureras, como porcentaje del PIB. Valores altos: economía industrializada. Valores bajos: poca industria (economía de servicios o extractiva).
Crecimiento del PIB (% anual) Variación porcentual anual del PIB a precios constantes. Positivo: la economía se expande. Negativo: recesión. Es de un solo año, así que refleja el ciclo económico de 2019.
Inflación, precios al consumidor (% anual) Variación porcentual anual del índice de precios al consumidor. Valores bajos y estables: estabilidad de precios. Valores altos: pérdida del poder adquisitivo e inestabilidad macroeconómica. Negativo: deflación.
Inversión extranjera directa, entradas netas (% del PIB) Entradas netas de inversión de no residentes que adquieren una participación duradera (10 % o más) en una empresa local, como porcentaje del PIB. Valores altos: economía atractiva para el capital extranjero (o centro financiero pequeño). Negativos: salida neta de inversión.

Fuente: Elaboración propia con base en World Bank (2024).

2.2.3 Dimensión de comercio exterior

Las variables de comercio exterior se incluyen porque la dependencia de los recursos naturales se manifiesta de forma más directa en lo que un país vende al resto del mundo; la participación de los combustibles y de los minerales en las exportaciones de mercancía mide la concentración de la canasta exportadora en productos primarios, mientras que las exportaciones de manufactura y de alta tecnología pueden reflejar la diversificación y la capacidad tecnológica (Lall, 2000). Las exportaciones totales como porcentaje del PIB indican el grado de apertura y de exposición en los mercados internacionales.

Tabla 4a. Código WDI e indicadores de comercio exterior.

Código WDI Variable Indicador (unidad)
NE.EXP.GNFS.ZS exportaciones Exportaciones de bienes y servicios (% del PIB)
TX.VAL.FUEL.ZS.UN exp_combustibles Exportaciones de combustibles (% de exp. de mercancías)
TX.VAL.MMTL.ZS.UN exp_minerales Exportaciones de minerales y metales (% de exp. de mercancías)
TX.VAL.MANF.ZS.UN exp_manufacturas Exportaciones de manufacturas (% de exp. de mercancías)
TX.VAL.TECH.MF.ZS exp_alta_tec Exportaciones de alta tecnología (% de exp. manufacturadas)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Tabla 4b. Descripción e interpretación de comercio exterior.

Variable Descripción Interpretación
Exportaciones de bienes y servicios (% del PIB) Valor de todos los bienes y servicios vendidos al resto del mundo, como porcentaje del PIB. Valores altos: economía abierta y dependiente del comercio. Valores bajos: economía más cerrada o con gran mercado interno.
Exportaciones de combustibles (% de exp. de mercancías) Combustibles (petróleo, gas, carbón y derivados) como porcentaje de las exportaciones de mercancías. Valores altos: pauta exportadora concentrada en hidrocarburos. Cercano a 0: no es exportador de combustibles.
Exportaciones de minerales y metales (% de exp. de mercancías) Minerales, menas y metales como porcentaje de las exportaciones de mercancías. Valores altos: exportaciones concentradas en la minería. Cercano a 0: exportaciones no mineras.
Exportaciones de manufacturas (% de exp. de mercancías) Productos manufacturados (químicos, maquinaria, equipo de transporte y otros) como porcentaje de las exportaciones de mercancías. Valores altos: exportaciones industriales y diversificadas. Valores bajos: se exportan sobre todo materias primas.
Exportaciones de alta tecnología (% de exp. manufacturadas) Productos de alta intensidad en investigación y desarrollo (aeroespacial, computadores, farmacéuticos, instrumentos científicos) como porcentaje de las exportaciones manufacturadas. Valores altos: capacidad tecnológica e industrial avanzada. Cercano a 0: manufactura de baja complejidad.

Fuente: Elaboración propia con base en World Bank (2024).

2.2.4 Dimensión de ingreso y bienestar

Esta dimensión permite evaluar los resultados de desarrollo y responder a la pregunta central del estudio: si la abundancia de recursos se traduce en mayor o menor bienestar. El PIB per cápita logra aproximar el nivel de ingreso promedio, pero no basta por sí solo, ya que no muestra cómo se distribuye ni qué se logra con él. Por ello se complementa con la esperanza de vida y la mortalidad infantil, indicadores de salud frecuentemente asociados con el nivel de desarrollo y con la capacidad de los países para convertir el ingreso en condiciones de vida.

Tabla 5a. Código WDI e indicadores de ingreso y bienestar.

Código WDI Variable Indicador (unidad)
NY.GDP.PCAP.CD pib_pc PIB per cápita (US$ corrientes)
SP.DYN.LE00.IN esp_vida Esperanza de vida al nacer (años)
SP.DYN.IMRT.IN mort_infantil Mortalidad infantil (por 1.000 nacidos vivos)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Tabla 5b. Descripción e interpretación de ingreso y bienestar.

Variable Descripción Interpretación
PIB per cápita (US$ corrientes) PIB total dividido entre la población a mitad de año, en dólares corrientes de EE. UU. Valores altos: mayor ingreso promedio por habitante. No muestra cómo se distribuye el ingreso dentro del país.
Esperanza de vida al nacer (años) Número promedio de años que viviría un recién nacido si los patrones de mortalidad actuales se mantuvieran durante toda su vida. >75 años: salud poblacional avanzada. 70-75 años: nivel medio. <70 años: desafíos significativos en salud pública.
Mortalidad infantil (por 1.000 nacidos vivos) Número de niños que mueren antes de cumplir un año por cada 1.000 nacidos vivos. <10: condiciones excelentes. 10-25: condiciones moderadas. >25: necesidades críticas en salud infantil.

Fuente: Elaboración propia con base en World Bank (2024).

2.3 Construcción de la base de datos

La base seleccionada originalmente contenía 217 países y 20 indicadores, se implementaron algunos criterios de depuración que se consideraban acorde al objetivo del estudio; se seleccionaron 18 variables de las 20, excluyendo rentas_totales e industria que podrían duplicar información y desestabilizar los modelos; y se eliminaron las filas vacías, las notas al pie del archivo y dos columnas que constantemente recalcaban el año 2019, asimismo las columnas fueron renombradas con nombres cortos y se convirtieron a formato numérico.

Los datos no disponibles que el Banco Mundial se convirtieron en valores faltantes (N/A), y posteriormente fueron eliminados junto con 33 países que tenían más del 25% de los indicadores sin datos, donde cada uno tenía entre 6 y 20 indicadores sin datos. Y por último se rellenaron algunos datos (116 celdas) faltantes con un valor estimado (mediana) para no tener que eliminar el país entero de la base de datos. Finalmente se obtuvo una base consolidada con 184 observaciones y 18 variables. Entre los países que no figuran en la base final están Venezuela, Turkmenistán, Sudán del Sur, Yemen y Eritrea, lo que es relevante en un estudio de recursos naturales (ver limitaciones en las conclusiones).

El código de depuración se muestra a continuación sin ejecutarse: el informe parte directamente de la base ya depurada (datos_recursos_2019_limpia.csv).

nombres <- c("anio", "codigo_anio", "pais", "codigo",
             "rentas_totales", "renta_petroleo", "renta_gas", "renta_carbon",
             "renta_minerales", "renta_bosques", "agricultura", "industria",
             "manufactura", "exportaciones", "exp_combustibles", "exp_minerales",
             "exp_manufacturas", "exp_alta_tec", "pib_pc", "crec_pib",
             "inflacion", "ied", "esp_vida", "mort_infantil")

datos_raw <- read_csv("datos_recursos_2019.csv",
                      na = c("..", ""),
                      col_types = cols(.default = col_character()))
names(datos_raw) <- nombres

datos <- datos_raw %>%
  filter(!is.na(codigo), codigo != "") %>%     
  select(-anio, -codigo_anio) %>%               
  mutate(across(-c(pais, codigo), as.numeric))

vars_num <- setdiff(names(datos), c("pais", "codigo"))
datos <- datos %>%
  mutate(prop_na = rowSums(is.na(across(all_of(vars_num)))) / length(vars_num))

paises_excluidos <- datos %>% filter(prop_na > 0.25) %>% pull(pais)

datos_clean <- datos %>%
  filter(prop_na <= 0.25) %>%
  select(-prop_na) %>%
  mutate(across(all_of(vars_num), ~ replace_na(.x, median(.x, na.rm = TRUE))))

write_csv(datos_clean, "datos_recursos_2019_limpia.csv")

cat("Países en la base original:", nrow(datos), "\n")
cat("Países excluidos (>25% de NA):", length(paises_excluidos), "\n")
cat("Países en la base limpia:", nrow(datos_clean), "\n")
paises_excluidos

2.4 Transformaciones y estandarización

Antes de aplicar el ACP se revisó la forma de la distribución de cada variable con el coeficiente de asimetría, y se observó que muchos de los recursos, sobre todo las rentas de recursos las exportaciones de combustibles y minerales, la inflación y la inversión extranjera, tienen la mayoría de los países con valores cercanos a cero y unos pocos con valores muy altos. Y dado que el ACP es sensible a los valores extremos y se basa en correlaciones, se optó por aplicar primero una transformación logarítmica a los indicadores con asimetría mayor que uno en el valor absoluto.

En rentas de recursos, agricultura, exportaciones totales, exportaciones de combustibles, minerales y alta tecnología, y mortalidad infantil, se utilizó log(1 + x), donde se suma 1 porque muchos países tienen valor cero y el logaritmo de 0 no existe. En inflación e inversión extranjera directa, se usó logaritmo con signo sign(x)·log(1 + |x|), porque estas dos pueden tomar valores negativos. Y por último en el PIB per cápita, se utilizó log10(x), dado que esta tiene una distribución muy asimétrica donde la mayoría de los países tienen ingresos bajos o medios y solo unos pocos tienen ingresos altísimos.

Finalmente las 18 variables estandarizaron con media cero y desviación estándar 1. La transformación redujo la asimetría en casi todos los indicadores, pero no en las rentas de recursos, que siguen asimétricas (carbón 6,04, gas 2,87, minerales 2,31, petróleo 1,96 y bosques 1,53), porque la mayoría de los países tienen valor cero y el logaritmo no corrige ese exceso de ceros. Esto se tiene en cuenta en la interpretación del ACP.

slog <- function(x) sign(x) * log1p(abs(x))

datos_clean <- read_csv("datos_recursos_2019_limpia.csv", show_col_types = FALSE)
vars_num <- setdiff(names(datos_clean), c("pais", "codigo"))

esperadas <- c("renta_petroleo", "renta_gas", "renta_carbon", "renta_minerales",
               "renta_bosques", "agricultura", "manufactura", "exportaciones",
               "exp_combustibles", "exp_minerales", "exp_manufacturas", "exp_alta_tec",
               "pib_pc", "crec_pib", "inflacion", "ied", "esp_vida", "mort_infantil")
faltan <- setdiff(esperadas, names(datos_clean))
if (length(faltan) > 0) {
  stop("Faltan columnas: ", paste(faltan, collapse = ", "),
       "\nColumnas presentes: ", paste(names(datos_clean), collapse = ", "))
}
datos_t <- data.frame(
  pais             = datos_clean$pais,
  codigo           = datos_clean$codigo,
  renta_petroleo   = log1p(datos_clean$renta_petroleo),
  renta_gas        = log1p(datos_clean$renta_gas),
  renta_carbon     = log1p(datos_clean$renta_carbon),
  renta_minerales  = log1p(datos_clean$renta_minerales),
  renta_bosques    = log1p(datos_clean$renta_bosques),
  agricultura      = log1p(datos_clean$agricultura),
  manufactura      = datos_clean$manufactura,
  exportaciones    = log1p(datos_clean$exportaciones),
  exp_combustibles = log1p(datos_clean$exp_combustibles),
  exp_minerales    = log1p(datos_clean$exp_minerales),
  exp_manufacturas = datos_clean$exp_manufacturas,
  exp_alta_tec     = log1p(datos_clean$exp_alta_tec),
  pib_pc           = log10(datos_clean$pib_pc),
  crec_pib         = datos_clean$crec_pib,
  inflacion        = slog(datos_clean$inflacion),
  ied              = slog(datos_clean$ied),
  esp_vida         = datos_clean$esp_vida,
  mort_infantil    = log1p(datos_clean$mort_infantil)
)
vars_acp <- setdiff(names(datos_t), c("pais", "codigo"))
X <- datos_t[, vars_acp]
rownames(X) <- datos_t$pais
# Indicadores con media 0 y desviación estándar 1
datos_z <- as.data.frame(scale(X))

asim <- function(x) mean((x - mean(x))^3) / sd(x)^3

transf <- c(renta_petroleo = "log(1 + x)", renta_gas = "log(1 + x)",
            renta_carbon = "log(1 + x)", renta_minerales = "log(1 + x)",
            renta_bosques = "log(1 + x)", agricultura = "log(1 + x)",
            manufactura = "ninguna", crec_pib = "ninguna",
            inflacion = "log con signo", ied = "log con signo",
            exportaciones = "log(1 + x)", exp_combustibles = "log(1 + x)",
            exp_minerales = "log(1 + x)", exp_manufacturas = "ninguna",
            exp_alta_tec = "log(1 + x)", pib_pc = "log10(x)",
            esp_vida = "ninguna", mort_infantil = "log(1 + x)")

Tabla 6. Indicadores, asimetría antes y después.

Variable Transformación Asimetría original Asimetría transformada
Rentas de recursos naturales (5)
renta_petroleo log(1 + x) 3.41 1.96
renta_gas log(1 + x) 8.23 2.87
renta_carbon log(1 + x) 9.53 6.04
renta_minerales log(1 + x) 3.50 2.31
renta_bosques log(1 + x) 3.72 1.53
Estructura productiva y desempeño macroeconómico (5)
agricultura log(1 + x) 1.17 -0.08
manufactura ninguna 0.61 0.61
crec_pib ninguna 0.75 0.75
inflacion log con signo 11.14 0.50
ied log con signo 8.59 0.07
Comercio exterior (5)
exportaciones log(1 + x) 2.66 0.15
exp_combustibles log(1 + x) 2.12 0.42
exp_minerales log(1 + x) 2.48 0.84
exp_manufacturas ninguna 0.19 0.19
exp_alta_tec log(1 + x) 3.01 -0.07
Ingreso y bienestar (3)
pib_pc log10(x) 2.13 -0.02
esp_vida ninguna -1.00 -1.00
mort_infantil log(1 + x) 1.68 0.00

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

2.5 Base de datos

La base final cuenta con 184 países y 18 variables que fueron agrupadas por dimensiones y utilizadas en los modelos ACP Y Ward. Los datos provienen del World Development Indicators de 2019 publicado por el Banco Mundial (DataBank) (databank.worldbank.org).

Las columnas reúnen los países con sus respectivos nombres cortos luego de que los códigos del WDI hayan sido renombrados y los indicadores descritos en las secciones anteriores; los valores se muestran en sus unidades originales, antes de que la transformación logarítmica y la estandarización les fueran aplicadas.

La tabla permite filtrar por columna, cambiar el número de filas por página y navegar entre páginas.

Tabla 7. Base de datos utilizada en el estudio.

library(reactable)

etiquetas <- setNames(dic$etiqueta, dic$variable)
columnas <- c(
  list(pais   = colDef(name = "País",   minWidth = 170, align = "left"),
       codigo = colDef(name = "Código", minWidth = 90)),
  lapply(setNames(nm = dic$variable), function(v)
    colDef(name = etiquetas[[v]], minWidth = 135, format = colFormat(digits = 2)))
)
datos_clean %>%
  select(pais, codigo, all_of(dic$variable)) %>%
  reactable(
    columns = columnas,
    filterable = TRUE,
    defaultPageSize = 15,
    showPageSizeOptions = TRUE,
    pageSizeOptions = c(10, 15, 25, 50),
    paginationType = "numbers",
    striped = TRUE,
    highlight = TRUE,
    defaultColDef = colDef(align = "center", headerStyle = list(textAlign = "center")),
    theme = reactableTheme(
      borderColor = "#BBD0ED",
      stripedColor = "#F5F8FD",
      highlightColor = "#ECE4F6",
      headerStyle = list(background = "#495589", color = "#FFFFFF"),
      filterInputStyle = list(borderColor = "#C8B6E2"),
      pageButtonActiveStyle = list(backgroundColor = "#2E3E6D", color = "#FFFFFF")
    )
  )

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

2.6 Descripción de los modelos empleados

La investigación se divide en dos etapas; en la primera se aplica un Análisis de las Componentes Principales (ACP), con el fin de reducir la dimensionalidad de los datos y sintetizar la información en un número reducido de factores ortogonales que capturan la mayor variabilidad posible. Además de resolver la redundancia entre indicadores muy correlacionados; como en el caso del PIB per cápita y la esperanza de vida. Se retienen los componentes con valor propio mayor que 1 (criterio de Kaiser).

En la segunda etapa, utilizando las coordenadas de los países en esos factores se implementa un análisis de conglomerados jerárquicos mediante el método Ward, que agrupa las naciones de acuerdo con las similitudes de sus perfiles multidimensionales. Se usa Ward porque en cada paso une los grupos que menos aumentan la varianza dentro de los clusters, produciendo grupos compactos y de tamaño comparable. A su vez agrupar sobre los componentes y no sobre las 18 variables resume la información común de los indicadores y evita que los más correlacionados pesen más de lo debido en las distancias.

3 Resultados descriptivos

3.1 Estadísticas descriptivas

La Tabla 8 muestra las medidas de tendencia central, la dispersión y la forma de la distribución de los 184 valores de cada país en cada columna, las estadísticas se calculan sobre las 18 variables usadas en el ACP, en sus unidades originales y están agrupadas por dimensión.

Tabla 8. Estadísticas descriptivas de las 18 variables por dimensión (184 países).

desc <- datos_clean %>%
  select(all_of(dic$variable)) %>%
  pivot_longer(everything(), names_to = "Variable", values_to = "valor") %>%
  group_by(Variable) %>%
  summarise(Media = mean(valor), Mediana = median(valor), `Desv. est.` = sd(valor),
            Mínimo = min(valor), Máximo = max(valor),
            Asimetría = mean((valor - mean(valor))^3) / sd(valor)^3,
            .groups = "drop")
desc <- desc[match(dic$variable, desc$Variable), ]
kable(desc, digits = 2, row.names = FALSE,
      ) %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE) %>%
  pack_rows(index = idx_grupos(dic$dimension), indent = FALSE, label_row_css = css_grupo)
Variable Media Mediana Desv. est. Mínimo Máximo Asimetría
Rentas de recursos naturales (5)
renta_petroleo 2.61 0.02 7.08 0.00 40.23 3.41
renta_gas 0.72 0.00 2.82 0.00 32.21 8.23
renta_carbon 0.18 0.00 1.09 0.00 12.76 9.53
renta_minerales 0.44 0.00 1.13 0.00 6.97 3.50
renta_bosques 1.26 0.23 2.61 0.00 19.15 3.72
Estructura productiva y desempeño macroeconómico (5)
agricultura 9.72 6.56 9.50 0.02 37.59 1.17
manufactura 11.34 10.95 6.07 0.52 31.93 0.61
crec_pib 2.85 2.73 3.31 -11.20 24.21 0.75
inflacion 5.13 2.22 19.80 -3.23 255.30 11.14
ied 8.24 2.51 39.11 -13.69 431.79 8.59
Comercio exterior (5)
exportaciones 41.77 35.04 29.75 7.78 206.58 2.66
exp_combustibles 14.51 3.99 23.49 0.00 95.17 2.12
exp_minerales 8.25 2.88 13.63 0.00 74.58 2.48
exp_manufacturas 42.04 42.17 28.79 0.13 96.22 0.19
exp_alta_tec 10.26 6.35 12.84 0.00 95.62 3.01
Ingreso y bienestar (3)
pib_pc 15957.42 6439.18 21645.43 234.31 115798.04 2.13
esp_vida 72.81 73.98 8.03 31.53 85.16 -1.00
mort_infantil 20.39 13.60 19.47 1.80 128.90 1.68

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Se observa que la mayoría de los indicadores tiene distribuciones asimétricas hacia la derecha: en casi todos la media supera a la mediana, lo que indica que unos pocos países con valores muy altos jalan el promedio. Ocurre en el PIB per cápita (media de 15.957 USD frente a una mediana de 6.439), la inflación (5,1 % frente a 2,2 %), la IED (8,2 % frente a 2,5 %), la mortalidad infantil (20,4 frente a 13,6 por mil) y, de forma extrema, en las rentas del petróleo (2,61 % del PIB frente a 0,02 %), donde la mediana cercana a cero refleja que muchos países no producen. En 14 de los 18 indicadores la asimetría supera 1 en valor absoluto, lo que justifica la transformación logarítmica previa al ACP. Solo manufactura, crecimiento del PIB, exportaciones de manufacturas y esperanza de vida se mantuvieron en su escala original; esta última es la única con asimetría negativa (−1,00), debido sobre todo a la República Centroafricana. Para tener un mejor análisis de los datos, las secciones siguientes detallan cada dimensión con histogramas.

3.2 Distribución de las variables por dimensión

Los histogramas muestran la forma de cada indicador antes de entrar al ACP. En cada gráfico, la columna izquierda muestra el indicador original y las dos siguientes el indicador transformado y el estandarizado (z), de modo que se ve cómo cambia la forma de la distribución. Debajo de cada gráfico se interpretan los indicadores de esa dimensión, con la asimetría antes y después de la transformación.

De los 18 indicadores, 14 tenían una asimetría mayor que 1 en valor absoluto y se transformaron; los otros cuatro (manufactura, crecimiento del PIB, exportaciones de manufacturas y esperanza de vida) se dejaron en su escala original.

hist_dimension <- function(dim_nombre) {
 
  vars <- as.character(dic$variable[dic$dimension == dim_nombre])
  vars <- intersect(vars, colnames(datos_clean))
  
  if(length(vars) == 0) stop(paste("No se encontraron variables para:", dim_nombre))
  
  df_lista <- list()
  
  for(v in vars) {
    val_orig <- datos_clean[[v]]
    val_z <- datos_z[[v]]
    v_lower <- tolower(v)
    

    val_trans <- case_when(
      v_lower == "exp_manufacturas" ~ val_orig,
      grepl("pib", v_lower) & grepl("pc", v_lower) ~ log10(val_orig),
      grepl("inflacion", v_lower) | grepl("inversion", v_lower) | grepl("ied", v_lower) ~ sign(val_orig) * log(1 + abs(val_orig)),
      grepl("renta", v_lower) | grepl("carbon", v_lower) | grepl("gas", v_lower) | 
      grepl("mineral", v_lower) | grepl("petroleo", v_lower) | grepl("bosque", v_lower) |
      grepl("agri", v_lower) | grepl("exp_", v_lower) | grepl("export", v_lower) | 
      grepl("mortalidad", v_lower) | grepl("mort_", v_lower) ~ log(1 + val_orig),
      TRUE ~ val_orig
    )
    
    tipo_trans <- case_when(
      v_lower == "exp_manufacturas" ~ "Sin Cambios",
      grepl("pib", v_lower) & grepl("pc", v_lower) ~ "log10(x)",
      grepl("inflacion", v_lower) | grepl("inversion", v_lower) | grepl("ied", v_lower) ~ "sign(x)*log(1+|x|)",
      grepl("renta", v_lower) | grepl("carbon", v_lower) | grepl("gas", v_lower) | 
      grepl("mineral", v_lower) | grepl("petroleo", v_lower) | grepl("bosque", v_lower) |
      grepl("agri", v_lower) | grepl("exp_", v_lower) | grepl("export", v_lower) | 
      grepl("mortalidad", v_lower) | grepl("mort_", v_lower) ~ "log(1 + x)",
      TRUE ~ "Sin Cambios"
    )
    

    df_v <- data.frame(
      Variable = v,
      Original = val_orig,
      Transformada = val_trans,
      Estandarizada_Z = val_z
    ) %>%
      pivot_longer(
        cols = c(Original, Transformada, Estandarizada_Z),
        names_to = "version",
        values_to = "valor"
      ) %>%
      mutate(
    
        panel = case_when(
          version == "Original"        ~ paste0(v, " (Original)"),
          version == "Transformada"    ~ paste0(v, " (Transformada)"),
          version == "Estandarizada_Z" ~ paste0(v, " (Estandarizada Z)")
        ),
     
        detalle_tooltip = case_when(
          version == "Original"        ~ "Escala Cruda",
          version == "Transformada"    ~ paste("Fórmula:", tipo_trans),
          version == "Estandarizada_Z" ~ "Media 0, Desvío 1"
        ),
        version = factor(version, levels = c("Original", "Transformada", "Estandarizada_Z"))
      )
    
    df_lista[[v]] <- df_v
  }
  
  df_total <- bind_rows(df_lista)
  
  orden_paneles <- unique(df_total$panel[order(df_total$Variable, df_total$version)])
  df_total$panel <- factor(df_total$panel, levels = orden_paneles)
  

  p <- ggplot(df_total, aes(x = valor, fill = version, text = paste0("Variable: ", Variable, "\n", detalle_tooltip))) + 
    geom_histogram(bins = 25, color = "white", alpha = 0.85) + 
    facet_wrap(~ panel, scales = "free", ncol = 3) + 
    scale_fill_manual(values = c(
      "Original" = "#A2B7E4", 
      "Transformada" = "#FBC490", 
      "Estandarizada_Z" = "#C8B6E2"
    )) + 
    labs(
      title = NULL, 
      x = NULL, 
      y = "Frecuencia"
    ) + 
    theme_minimal() + 
    theme(
      legend.position = "none",
      panel.spacing.x = unit(1.5, "lines"), 
      panel.spacing.y = unit(2.5, "lines"), 
      strip.text = element_text(face = "bold", size = 9, color = "#333333"),
      axis.text.x = element_text(size = 8)
    )
  

  ggplotly(p, tooltip = c("x", "text")) %>% 
    layout(
      margin = list(t = 20, b = 40, l = 50, r = 20)
    )
}

3.2.1 Rentas de recursos naturales

Figura 1. Distribución de los indicadores de rentas de recursos naturales.

hist_dimension("Rentas de recursos naturales")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Distribución y asimetría de las rentas naturales: En su escala original, las cinco variables presentan una fuerte asimetría positiva, caracterizada por una alta concentración en cero y una cola derecha extendida. Esta forma responde a una realidad estructural: mientras que las rentas forestales están presentes en casi todo el mundo (solo un 5 % de países registra cero), una proporción elevada de economías carece de explotación comercial en otros rubros, alcanzando valores nulos en petróleo (36 %), gas (47 %), minerales (52 %) y carbón (64 %). En consecuencia, los promedios se alejan considerablemente de las medianas; por ejemplo, en petróleo la media es de 2,61 % del PIB frente a una mediana de 0,02 %, reflejando que la dependencia extractiva se concentra en un grupo reducido de países.

Países que se encuentran en la cola superior: Los valores máximos de cada distribución identifican a las economías más dependientes de cada recurso: Irak (40,2 % del PIB), Kuwait (38,7 %) y República del Congo (35,9 %) lideran en petróleo; Timor Oriental (32,2 %) y Brunéi (11,8 %) en gas; Kirguistán (7,0 %), Mongolia (6,6 %) y Malí (5,7 %) en minerales; e Islas Salomón (19,1 %), Liberia (14,3 %) y Burundi (13,1 %) en bosques. En carbón destacan Mongolia (6,6 %), Mozambique (3,3 %) y un registro atípico de Cabo Verde (12,8 %) reportado en los datos del Banco Mundial, que parece un error de la fuente (el país no tiene minería de carbón) y se retoma en las limitaciones.

Efecto de la transformación logarítmica: La aplicación de log(1 + x) reduce el coeficiente de asimetría en todos los indicadores; gas pasa de 8,23 a 2,87; carbón de 9,53 a 6,04; minerales de 3,50 a 2,31; petróleo de 3,41 a 1,96; y bosques de 3,72 a 1,53, pero no logra normalizar las distribuciones. Como se observa en la columna central de la Figura 1, aunque las rentas forestales logran dispersarse, el resto mantiene una barra dominante en el origen debido a que log(1 + 0) = 0. El reto estadístico no radica únicamente en los valores extremos, sino en el exceso de ceros. Esta característica tiene dos implicaciones directas para las siguientes etapas: en el Análisis de Componentes Principales (ACP), el gas y el carbón no dominarán el primer componente (PC1) y se desplazarán hacia dimensiones secundarias (PC2 y PC3, respectivamente); además, ambas variables concentrarán la mayor cantidad de observaciones atípicas.

3.2.2 Estructura productiva y desempeño macroeconómico

Figura 2. Distribución de los indicadores de estructura productiva y desempeño macroeconómico.

hist_dimension("Estructura productiva y desempeño macroeconómico")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Agricultura: Su asimetría es de 1,17 y baja a −0,08 con el logaritmo. La media es 9,7 % del PIB y la mediana 6,6 %; va de 0,02 % (Aruba) a 37,6 % (Chad), es decir, hay economías donde la agricultura casi no existe y otras donde pesa más de un tercio del PIB.

Manufactura y crecimiento del PIB: No se transformaron porque son las más simétricas del grupo (asimetría de 0,61 y 0,75), por lo que en la Figura 2 conservan su distribución original en la columna central. La manufactura tiene una mediana de 10,9 % del PIB, con máximo en Irlanda (31,9 %) y mínimo en Bermudas (0,5 %). El crecimiento del PIB tiene mediana de 2,7 %, pero es un dato de un solo año y va de −11,2 % (Libia) a +24,2 % (Timor Oriental), con recesiones también en Líbano (−6,9 %) y Zimbabue (−6,3 %). Esos extremos reflejan choques puntuales de 2019 más que tendencias de largo plazo.

Inflación e inversión extranjera directa: Son las dos variables con las colas más extremas. La inflación tiene media de 5,1 % y mediana de 2,2 %, con máximo en Zimbabue (255,3 %), seguido de Argentina (53,5 %), Sudán (51,0 %) e Irán (39,9 %), y deflación en Burkina Faso (−3,2 %). La IED tiene media de 8,2 % del PIB frente a una mediana de 2,5 %; los máximos son Chipre (431,8 %), Luxemburgo (234,3 %) y Malta (198,2 %), economías pequeñas y financieras donde los flujos suelen reflejar el paso de capitales de multinacionales más que inversión productiva. En el otro extremo hay salidas netas en Países Bajos (−13,7 %) y Mauritania (−11,2 %). La transformación logarítmica con signo (que permite conservar los valores negativos) reduce la asimetría de la inflación de 11,14 a 0,50 y la de la IED de 8,59 a 0,07, logrando las mayores correcciones de todo el conjunto.

3.2.3 Comercio exterior

Figura 3. Distribución de los indicadores de comercio exterior.

hist_dimension("Comercio exterior")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Exportaciones totales. La asimetría baja de 2,66 a 0,15. La media es 41,8 % del PIB y la mediana 35,0 %. Los países más abiertos son economías pequeñas o centros de reexportación (Luxemburgo, 206,6 %; Hong Kong, 177,7 %; Singapur, 176,8 %), frente a 7,8 % en Nepal. Un valor superior a 100 % es posible porque se compara el valor bruto exportado con un PIB que mide solo valor agregado.

Combustibles y minerales. A diferencia de las rentas, estos dos indicadores sí se corrigen bien con el logaritmo porque casi todos los países tienen algún valor positivo (solo 2,2 % de ceros en combustibles y 0,5 % en minerales): la asimetría baja de 2,12 a 0,42 y de 2,48 a 0,84. Aun así, la mayoría de los países exporta poco de ellos: la mediana es 4,0 % de las exportaciones de mercancías en combustibles y 2,9 % en minerales, frente a medias de 14,5 % y 8,3 %. Los máximos son Angola (95,2 %), Libia (94,4 %) y Kuwait (94,4 %) en combustibles, y Zambia (74,6 %), República Democrática del Congo (67,1 %) y Tayikistán (56,9 %) en minerales: canastas exportadoras casi de un solo producto.

Manufacturas y alta tecnología: Las exportaciones de manufacturas ya son prácticamente simétricas en su escala original (media de 42,04 % y mediana de 42,17 %; asimetría de 0,19). Por eso, en la columna central de la Figura 3 se conserva su escala original: aplicar el logaritmo introduciría una asimetría negativa innecesaria. Su amplio rango, que va de 0,13 % (Maldivas) a 96,2 % (Botsuana), la convierte en una de las variables que mejor separan las economías de base primaria de las industriales. Por su parte, la alta tecnología presenta una asimetría inicial de 3,01 que se corrige a −0,07 con el logaritmo; su mediana es 6,4 % de las exportaciones manufacturadas y su máximo (95,6 % en República Centroafricana) debe leerse con cautela, pues al calcularse sobre una base manufacturera muy reducida el indicador resulta altamente volátil.

3.2.4 Ingreso y bienestar

Figura 4. Distribución de los indicadores de ingreso y bienestar.

hist_dimension("Ingreso y bienestar")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

PIB per cápita: Es el indicador más desigual: va de 234 USD (Burundi) a 115.798 USD (Bermudas), una razón de casi 500 veces. La media (15.957 USD) supera en 2,5 veces a la mediana (6.439 USD) por la cola de países muy ricos. La asimetría de 2,13 pasa a −0,02 con log10: en escala logarítmica los países se reparten de forma casi simétrica.

Mortalidad infantil: También tiene cola a la derecha, con mediana de 13,6 por mil y media de 20,4, y un rango de 1,8 (Japón) a 128,9 (República Centroafricana). El logaritmo natural la deja prácticamente simétrica (de 1,68 a 0,00): la mayoría de los países tiene mortalidad baja y unos pocos presentan valores críticos.

Esperanza de vida: Es la única variable con cola hacia la izquierda (asimetría de −1,00), por lo que no se aplicó transformación logarítmica. La mediana es 74,0 años y unos pocos países quedan muy por debajo. Buena parte de ese sesgo se debe a un solo país: la República Centroafricana aparece con 31,5 años, muy por debajo del siguiente valor más bajo (Chad, 53,0). Sin ese registro la asimetría baja a −0,42; al tratarse de un posible error de captura en la fuente original, su impacto se retoma en la sección de limitaciones. El máximo es Hong Kong (85,2 años).

En conjunto, los tres indicadores describen un mismo eje de desarrollo: los países con menor ingreso son también los de menor esperanza de vida y mayor mortalidad infantil. Ese eje es el que luego resume PC1.

3.3 Valores extremos

Los histogramas mostraron que muchos indicadores tienen colas largas, es decir, que unos pocos países se alejan del resto. Esta sección identifica cuáles son esos países y en qué indicadores se alejan. Para ello se utilizan diagramas de caja (boxplots) construidos sobre los indicadores transformados y estandarizados, los mismos que entran al ACP, lo que permite ubicar los 18 indicadores en una misma escala: un valor de 0 corresponde al promedio de los países y cada unidad equivale a una desviación estándar.

En cada diagrama, la caja contiene el 50 % central de los países y la línea interior marca la mediana. Los bigotes se extienden hasta los valores más alejados que todavía se consideran normales, y los puntos rojos señalan los países atípicos, es decir, aquellos cuyo valor se aleja de la caja más de 1,5 veces su ancho (criterio de Tukey). Un valor atípico no es un error de medición: indica que ese país es inusual respecto a los demás en ese indicador. Al pasar el cursor sobre un punto se muestra el nombre del país.

etq <- setNames(dic$etiqueta, dic$variable)

z_long <- datos_z %>%
  rownames_to_column("pais") %>%
  pivot_longer(-pais, names_to = "variable", values_to = "z") %>%
  group_by(variable) %>%

  mutate(q1 = quantile(z, 0.25, na.rm = TRUE), 
         q3 = quantile(z, 0.75, na.rm = TRUE), 
         iqr = q3 - q1,
       
         atipico = !is.na(z) & (z < q1 - 1.5 * iqr | z > q3 + 1.5 * iqr)) %>%
  ungroup() %>%
  mutate(etiqueta = factor(etq[variable], levels = rev(unname(etq))))

res_atip   <- z_long %>% group_by(variable) %>% summarise(n = sum(atipico), .groups = "drop")
n_atip_tot <- sum(z_long$atipico)
paises_atip <- z_long %>% filter(atipico) %>% count(pais)
n_paises_atip <- nrow(paises_atip)
n_paises_tot  <- n_distinct(z_long$pais)
vars_sin <- dic$variable[dic$variable %in% res_atip$variable[res_atip$n == 0]]
n_atip_rentas <- sum(res_atip$n[startsWith(res_atip$variable, "renta_")])

Figura 5. Boxplots de los indicadores estandarizados, con los países atípicos.

p_atip <- ggplot(z_long, aes(x = etiqueta, y = z)) + 
 
  geom_boxplot(fill = "#E3F2FD", color = "#7087BB", outlier.shape = NA, width = 0.6) +
  geom_point(data = filter(z_long, atipico),
             aes(text = paste0(pais, "<br>", etiqueta, "<br>z = ", round(z, 2))),
             color = "#A98CC3", size = 1.8, alpha = 0.85) +
 
  labs(y = "Valor estandarizado (desv. estándar)", x = NULL) + 
  theme_minimal() +
  coord_flip() 

ggplotly(p_atip, tooltip = "text", height = 650)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

6 indicadores no presentan valores atípicos (Agricultura, Exportaciones de combustibles, Exportaciones de manufacturas, Exportaciones de alta tecnología, PIB per cápita, Mortalidad infantil), mientras que en los otros 12 se identifican en conjunto 190 observaciones atípicas, distribuidas en 108 de los 184 países; los 76 restantes no son atípicos en ningún indicador.

Las rentas de recursos concentran la mayoría de los atípicos. Suman 140 de los 190 casos (74 %): carbón (37), minerales (33), gas (32), petróleo (29) y bosques (9). La razón es la que ya se vio en los histogramas: en carbón (64 % de ceros), minerales (52 %) y gas (47 %) la caja queda aplastada contra el valor mínimo, y cualquier país que sí produce queda marcado como atípico. En estas variables, por tanto, los atípicos identifican a los productores y no a datos anómalos; son justamente los países que el estudio quiere caracterizar.

Casi todos los atípicos están hacia la derecha. Los valores muy altos son la norma, pero cuatro indicadores también tienen atípicos hacia la izquierda: la IED (11 bajos y 6 altos), la inflación (8 y 7, países con inflación muy baja o negativa frente a los de inflación alta), el crecimiento del PIB (4 y 1) y la esperanza de vida, cuyo único atípico es la República Centroafricana: con 31,5 años queda 5,1 desviaciones por debajo de la media y es el valor más extremo hacia abajo de todo el conjunto.

Los valores más alejados del promedio. Se observan en las rentas de carbón (hasta 8,7 desviaciones por encima de la media, en Cabo Verde), el crecimiento del PIB (6,5, Timor Oriental), las rentas de gas (5,8, también Timor Oriental) y la inflación (4,6, Zimbabue).

La Tabla 9 reúne a los países que son atípicos en cuatro o más indicadores. Ninguno es atípico en más de 4: la mayoría de los países que se salen de la norma lo hacen en uno o dos indicadores (54 y 34 países, respectivamente), 12 en tres y 8 en cuatro.

Tabla 9. Países con valores atípicos en cuatro o más indicadores.

umbral_atip <- 4

tab_atip <- z_long %>%
  filter(atipico) %>%
  group_by(pais) %>%
  summarise(n = n(),
            ind = paste(etq[variable[order(match(variable, dic$variable))]], collapse = " · "),
            .groups = "drop") %>%
  filter(n >= umbral_atip) %>%
  arrange(desc(n), pais)

kable(tab_atip, col.names = c("País", "N.º de atípicos", "Indicadores"),
      align = c("l", "c", "l")) %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE) %>%
  column_spec(1, bold = TRUE, width = "20%") %>%
  column_spec(2, width = "12%") %>%
  column_spec(3, width = "68%")
País N.º de atípicos Indicadores
Angola 4 Rentas del petróleo · Rentas del gas natural · Inflación · Inversión extranjera directa
Iran, Islamic Rep.  4 Rentas del petróleo · Rentas del gas natural · Rentas de minerales · Inflación
Kazakhstan 4 Rentas del petróleo · Rentas del gas natural · Rentas del carbón · Rentas de minerales
Libya 4 Rentas del petróleo · Rentas del gas natural · Crecimiento del PIB · Inflación
Mauritania 4 Rentas del carbón · Rentas de minerales · Inversión extranjera directa · Exportaciones de minerales y metales
Russian Federation 4 Rentas del petróleo · Rentas del gas natural · Rentas del carbón · Rentas de minerales
Timor-Leste 4 Rentas del petróleo · Rentas del gas natural · Crecimiento del PIB · Inversión extranjera directa
Zimbabwe 4 Rentas del carbón · Rentas de minerales · Crecimiento del PIB · Inflación

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Los ocho países de la tabla tienen al menos dos rentas de recursos atípicas. Kazajistán y Rusia comparten un perfil de canasta amplia de recursos (petróleo, gas, carbón y minerales), mientras que Irán, Angola, Libia y Timor Oriental combinan rentas de hidrocarburos con inflación, crecimiento o IED atípicos. Zimbabue combina rentas de carbón y minerales con inflación y crecimiento atípicos, y Mauritania con IED y exportaciones de minerales atípicas. En total, seis de los ocho (Angola, Irán, Libia, Timor Oriental, Zimbabue y Mauritania) juntan rentas atípicas con inflación, crecimiento o IED atípicos, lo que es relevante para la pregunta de investigación; sin embargo, son pocos casos y no permiten generalizar (más adelante se verá que la inflación mediana es baja en todos los grupos).

Se trata de situaciones reales y no de errores de medición, por lo que todos los países se conservan en el análisis. La transformación logarítmica ya redujo el peso de las colas, y las rentas con exceso de ceros se tendrán en cuenta al interpretar los componentes.

3.4 Relación entre desarrollo y recursos naturales

Figura 6. PIB per cápita vs. esperanza de vida, 2019.

datos_g <- datos_clean %>%
  mutate(region = countrycode(codigo, "iso3c", "region",
                              custom_match = c("XKX" = "Europe & Central Asia")))

p_disp <- ggplot(datos_g, aes(x = pib_pc, y = esp_vida, color = region,
                              size = renta_petroleo + renta_gas + renta_minerales,
                              text = paste0(pais,
                                            "<br>PIB pc: ", round(pib_pc),
                                            "<br>Esp. vida: ", round(esp_vida, 1)))) +
  geom_point(alpha = 0.7) +
  scale_x_log10(labels = scales::comma) +
  labs(title = " ",
       x = "PIB per cápita (US$, escala log)", y = "Esperanza de vida (años)",
       color = "Región", size = "Rentas petróleo + gas + minerales") +
  theme_minimal()
ggplotly(p_disp, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La relación entre ingreso y salud es fuerte pero no lineal: Con el PIB per cápita en escala logarítmica, la correlación con la esperanza de vida es de 0,84 (R² = 0,70): cada vez que el ingreso se multiplica por 10, la esperanza de vida sube unos 11 años. Es la forma de la curva de Preston: el ingreso importa mucho en los niveles bajos y menos después. Este es el eje que resume PC1 (cargas de −0,94 para el PIB, −0,88 para la esperanza de vida y +0,89 para la mortalidad infantil).

La dispersión disminuye con el ingreso: La desviación estándar de la esperanza de vida es de 7,7 años en los países con menos de 1.000 USD, 5,5 entre 1.000 y 4.000, 3,9 entre 4.000 y 12.000 y 3,3 por encima de 12.000. Es decir, con ingresos bajos el ingreso no determina el bienestar, y es ahí donde aparecen los casos que interesan para la pregunta de investigación.

Los recursos extractivos no determinan el desarrollo por sí solos: La correlación de Spearman entre las rentas extractivas (petróleo + gas + minerales) y el PIB per cápita es de −0,08, y con la esperanza de vida de −0,10: no hay una relación global. La excepción son las rentas forestales: al sumar las cinco rentas (petróleo, gas, carbón, minerales y bosques) las correlaciones pasan a −0,49 con el PIB per cápita y −0,50 con la esperanza de vida, y casi todo ese efecto viene de los bosques (Spearman de −0,71 y −0,72; sin ellos, la suma de las otras cuatro rentas da −0,11 y −0,12). La explotación forestal es propia de economías agrícolas de bajo ingreso, por eso esta renta carga en PC1 junto con la pobreza. Entre los países extractivos hay dos comportamientos opuestos. Algunos tienen una esperanza de vida mayor que la que predice su ingreso (Irán, +6,5 años; Argelia, +4,8; Omán, +2,1; Kuwait, +1,7), mientras que otros quedan muy por debajo de la curva (Nigeria, −16,3; Guinea Ecuatorial, −10,6; Chad, −10,3; Gabón, −6,0; Angola, −5,1; Congo, −5,0). Entre los 32 países con rentas extractivas de al menos 5 % del PIB, el residuo medio es de −1,3 años, frente a +0,3 en el resto. Colombia (+4,1) y Chile (+3,8) están por encima de la curva. Son asociaciones descriptivas, no causales.

Conexión con el modelo: Esta heterogeneidad anticipa los clusters: ser extractivo no implica ni buenos ni malos resultados, depende de qué más tenga el país. Responde parcialmente a la pregunta de si existen países extractivos capaces de consolidar su desarrollo.

3.5 Comparación por región

Figura 7. PIB per cápita vs. región, 2019.

nombres_reg <- c("Sub-Saharan Africa" = "África subsahariana",
                 "South Asia" = "Asia del Sur",
                 "East Asia & Pacific" = "Asia del Este y Pacífico",
                 "Middle East, North Africa, Afghanistan & Pakistan" = "Medio Oriente y Norte de África*",
                 "Latin America & Caribbean" = "América Latina y el Caribe",
                 "Europe & Central Asia" = "Europa y Asia Central",
                 "North America" = "Norteamérica")

lg <- datos_g %>%
  mutate(lg = log10(pib_pc), region_es = recode(region, !!!nombres_reg))

orden <- lg %>% group_by(region_es) %>%
  summarise(m = median(pib_pc), .groups = "drop") %>% arrange(m) %>% pull(region_es)

res <- lg %>% group_by(region_es) %>%
  summarise(q1  = quantile(lg, .25),
            med = median(lg),
            q3  = quantile(lg, .75),
            lf  = min(lg[lg >= q1 - 1.5 * IQR(lg)]),
            uf  = max(lg[lg <= q3 + 1.5 * IQR(lg)]),
            .groups = "drop") %>%
  mutate(across(c(q1, med, q3, lf, uf), ~ 10^.x))

atip <- lg %>% group_by(region_es) %>%
  filter(lg < quantile(lg, .25) - 1.5 * IQR(lg) |
         lg > quantile(lg, .75) + 1.5 * IQR(lg)) %>%
  ungroup()

fmt_usd <- function(x) format(round(x), big.mark = ".", decimal.mark = ",", trim = TRUE)

est <- res %>%
  pivot_longer(c(lf, q1, med, q3, uf), names_to = "est", values_to = "val") %>%
  mutate(etq = recode(est, lf = "Bigote inferior", q1 = "Q1", med = "Mediana",
                      q3 = "Q3", uf = "Bigote superior"),
         txt = paste0(etq, ": US$ ", fmt_usd(val)))

plot_ly() %>%
  add_trace(data = res, type = "box", orientation = "h", y = ~region_es,
            q1 = ~q1, median = ~med, q3 = ~q3,
            lowerfence = ~lf, upperfence = ~uf, color = ~region_es,
            hoverinfo = "skip") %>%
  add_markers(data = est, x = ~val, y = ~region_es,
              marker = list(color = "rgba(0,0,0,0)", size = 14),
              text = ~txt, hovertemplate = "%{text}<extra></extra>") %>%
add_markers(data = atip, x = ~pib_pc, y = ~region_es,
            marker = list(color = "black", size = 6),
            text = ~paste0(pais, ": US$ ", fmt_usd(pib_pc)),
            hovertemplate = "%{text}<extra></extra>") %>%
  layout(showlegend = FALSE,
         xaxis = list(type = "log", title = "PIB per cápita (US$, escala log)",
                      tickvals = c(1000, 10000, 100000),
                      ticktext = c("1.000", "10.000", "100.000")),
         yaxis = list(title = "", categoryorder = "array", categoryarray = orden))

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Brechas regionales que son enormes: Las medianas van de 1.131 USD en África subsahariana a 65.228 USD en Norteamérica, una razón de 58 veces. En orden ascendente: Asia del Sur (2.853), Asia del Este y Pacífico (4.789), Medio Oriente y Norte de África (5.672), América Latina y el Caribe (9.030) y Europa y Asia Central (19.335). La región explica cerca del 45 % de la varianza del log del PIB per cápita (R² = 0,45 en un ANOVA; el contraste de Kruskal-Wallis da p < 0,001): importa, pero el 55 % restante ocurre dentro de las regiones. Esto se ve en el gráfico, donde las cajas de Asia del Este y Pacífico, Medio Oriente y Norte de África, América Latina y Europa y Asia Central se traslapan en buena parte de su rango.

Heterogeneidad interna que distingue regiones: La razón entre el tercer y el primer cuartil es de 10,7 en Asia del Este y Pacífico, 8,4 en Medio Oriente y Norte de África y 6,3 en Europa y Asia Central, frente a 2,3 en América Latina y el Caribe y 1,9 en Asia del Sur. Medio Oriente y Norte de África es el caso más relevante para este estudio porque combina recursos extractivos con una gran desigualdad de ingreso entre países: según los datos, tiene la mediana más alta de rentas totales de recursos naturales (5,55 % del PIB, frente a 0,16 % en Europa y Asia Central), y su rango va de Qatar (66.841 USD) a Afganistán (497 USD).

Los valores atípicos dependen de la escala: En el gráfico, que usa escala logarítmica, solo se marcan como atípicos Seychelles (África subsahariana), Haití (el más bajo de América Latina) y Maldivas (Asia del Sur). Medidos en dólares, los países que quedan muy por encima del resto de su región son, en África subsahariana, Guinea Ecuatorial, Gabón, Botsuana, Mauricio, Seychelles y Sudáfrica (economías extractivas y de otro tipo); en el resto de regiones son Luxemburgo, Macao, Maldivas, Bahamas y Aruba, economías pequeñas de servicios o turismo, no de recursos. Seychelles y Maldivas son los únicos países que aparecen como atípicos con ambos criterios.

Limitaciones: Norteamérica tiene solo 3 países y Asia del Sur 6, así que sus cajas son poco confiables. Además, el PIB per cápita es un promedio y no dice nada sobre la desigualdad dentro de cada país.

Conexión con el modelo: La región no es el destino: Ward agrupa por perfil económico, no por geografía. Por eso el cluster 1 junta a buena parte de África subsahariana con economías como Rusia, Kazajistán, Chile, Perú y Australia, cuyo perfil exportador es primario.

4 Resultados del modelo

4.1 Análisis de Componentes Principales (ACP)

Se realizó el Análisis de Componentes Principales sobre las 18 variables transformadas y estandarizadas (media 0 y desviación estándar 1), usando la función PCA() del paquete FactoMineR. Como las variables están estandarizadas, el análisis equivale a trabajar con la matriz de correlaciones. Se calcularon los 18 componentes posibles y se retuvieron los que tienen valor propio mayor que 1 (criterio de Kaiser).

En el ACP se reemplaza las 18 variables, que están correlacionadas entre sí, por un conjunto nuevo de ejes (los componentes principales) que no están correlacionados y que se ordenan de mayor a menor información. El procedimiento sigue estos pasos:

  • Estandarización. Todas las variables tienen varianza 1, de modo que ninguna pesa más por su unidad de medida. La varianza total del análisis es entonces 18.
  • Descomposición de la matriz de correlaciones. De ella salen los valores propios (autovalores) y los vectores propios. Cada autovalor es la varianza que captura un componente; su cociente con 18 es el porcentaje de varianza explicada.
  • Cargas. Son las correlaciones entre cada variable y cada componente, y sirven para darle significado económico al eje (sección de cargas factoriales).
  • Contribuciones y calidad de representación (cos²). Las contribuciones indican cuánto aporta cada variable a la construcción de un componente, y el cos² indica qué tan bien queda representada una variable (o un país) en el plano elegido.
  • Puntuaciones. Son las coordenadas de cada país en los componentes. Sobre ellas se aplica después la clusterización de Ward.

Como el ACP es un método lineal basado en correlaciones, es sensible a los valores extremos y a las variables con exceso de ceros; por eso se transformaron los indicadores y se revisaron los atípicos (secciones anteriores). El signo de cada componente es arbitrario, y en este informe se fijó para que la interpretación no cambie al volver a ejecutarlo.

4.1.1 Adecuación de los datos para el ACP

Antes de extraer los componentes conviene comprobar que los datos tienen suficiente estructura de correlación. Para ello se usan dos pruebas: la prueba de esfericidad de Bartlett, que contrasta si la matriz de correlaciones es la identidad (variables sin relación entre sí), y la medida de adecuación muestral de Kaiser-Meyer-Olkin (KMO), que compara las correlaciones observadas con las correlaciones parciales. Un KMO cercano a 1 indica que las variables comparten mucha varianza común; por debajo de 0,5 el ACP no sería recomendable.

R_cor  <- cor(X)
n_obs  <- nrow(X)
p_var  <- ncol(X)


chi_bart <- -(n_obs - 1 - (2 * p_var + 5) / 6) * log(det(R_cor))
gl_bart  <- p_var * (p_var - 1) / 2
p_bart   <- pchisq(chi_bart, gl_bart, lower.tail = FALSE)


parc  <- -cov2cor(solve(R_cor)); diag(parc) <- 0
R_off <- R_cor;                  diag(R_off) <- 0
kmo_global <- sum(R_off^2) / (sum(R_off^2) + sum(parc^2))
msa <- colSums(R_off^2) / (colSums(R_off^2) + colSums(parc^2))
msa_bajas <- sort(msa[msa < 0.5])

lectura_kmo <- if (kmo_global >= 0.8) "muy buena" else if (kmo_global >= 0.7) "buena" else if (kmo_global >= 0.5) "regular" else "inaceptable"

tab_sup <- tribble(
  ~Prueba, ~Resultado, ~`Criterio de lectura`, ~Conclusión,
  "Esfericidad de Bartlett",
    paste0("χ² = ", fmt(chi_bart, 1), " (gl = ", gl_bart, "); ",
           ifelse(p_bart < 0.001, "p < 0,001", paste0("p = ", fmt(p_bart, 3)))),
    "H0: la matriz de correlaciones es la identidad (variables no correlacionadas).",
    "Se rechaza H0: hay correlación suficiente para resumir los indicadores.",
  "KMO global",
    fmt(kmo_global, 2),
    "< 0,5 inaceptable; 0,5–0,7 regular; 0,7–0,8 bueno; > 0,8 muy bueno.",
    paste0("Adecuación ", lectura_kmo, "."),
  "KMO por variable (MSA) más bajos",
    paste0(paste0(names(msa_bajas), " (", fmt(msa_bajas, 2), ")"), collapse = "; "),
    "Un valor < 0,5 indica que la variable comparte poca varianza con las demás.",
    "Se mantienen porque definen PC4 (manufactura) y PC5 (crecimiento del PIB)."
)

Tabla 10. Pruebas de adecuación para el ACP.

kable(tab_sup, align = c("l", "l", "l", "l")) %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE) %>%
  column_spec(1, bold = TRUE, width = "20%")
Prueba Resultado Criterio de lectura Conclusión
Esfericidad de Bartlett χ² = 1.666,8 (gl = 153); p < 0,001 H0: la matriz de correlaciones es la identidad (variables no correlacionadas). Se rechaza H0: hay correlación suficiente para resumir los indicadores.
KMO global 0,77 < 0,5 inaceptable; 0,5–0,7 regular; 0,7–0,8 bueno; > 0,8 muy bueno. Adecuación buena.
KMO por variable (MSA) más bajos manufactura (0,37); crec_pib (0,49) Un valor < 0,5 indica que la variable comparte poca varianza con las demás. Se mantienen porque definen PC4 (manufactura) y PC5 (crecimiento del PIB).

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La prueba de Bartlett rechaza que las variables sean independientes (χ² = 1.666,8 con 153 grados de libertad) y el KMO global de 0,77 indica una adecuación buena, por lo que el ACP está justificado. Esto es coherente con lo visto en las correlaciones: hay un bloque de desarrollo muy cohesionado y otros bloques más pequeños (hidrocarburos, minería). Las variables con KMO individual más bajo (manufactura y crec_pib) casi no se correlacionan con las demás, de modo que no se resumen en el eje de desarrollo y aparecen en componentes propios.

4.2 Reporte de la proporción de varianza explicada por cada componente

Tabla 11. Varianza explicada por cada componente y criterio de Kaiser.

res_pca <- PCA(X, scale.unit = TRUE, ncp = ncol(X), graph = FALSE)

signo_ref <- c(pib_pc = -1, renta_petroleo = 1, renta_minerales = 1,
               manufactura = 1, crec_pib = 1)
for (j in seq_along(signo_ref)) {
  if (sign(res_pca$var$cor[names(signo_ref)[j], j]) * signo_ref[j] < 0) {
    res_pca$var$coord[, j] <- -res_pca$var$coord[, j]
    res_pca$var$cor[, j]   <- -res_pca$var$cor[, j]
    res_pca$ind$coord[, j] <- -res_pca$ind$coord[, j]
  }
}
eig <- as.data.frame(res_pca$eig)
colnames(eig) <- c("Valor propio", "% varianza", "% varianza acumulada")
eig$Componente <- paste0("PC", seq_len(nrow(eig)))
n_comp <- sum(eig$`Valor propio` > 1)   

eig_v <- eig$`Valor propio`
eig_p <- eig$`% varianza`
eig_a <- eig$`% varianza acumulada`

tab_eig <- data.frame(
  Componente = eig$Componente,
  Autovalor = eig_v,
  `Varianza explicada (%)` = eig_p,
  `Varianza acumulada (%)` = eig_a,
  `¿Autovalor > 1?` = ifelse(eig_v > 1, "Sí", "No"),
  check.names = FALSE
)
kable(tab_eig, digits = 2, row.names = FALSE, align = c("l", "c", "c", "c", "c"),
      caption = " ") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE) %>%
  column_spec(5, background = ifelse(eig_v > 1, "#F3CBDD", "white")) %>%
  row_spec(seq_len(n_comp), bold = TRUE)
Componente Autovalor Varianza explicada (%) Varianza acumulada (%) ¿Autovalor > 1?
PC1 5.03 27.93 27.93 Sí
PC2 2.53 14.07 42.00 Sí
PC3 1.69 9.38 51.38 Sí
PC4 1.36 7.55 58.92 Sí
PC5 1.23 6.83 65.75 Sí
PC6 0.93 5.19 70.94 No
PC7 0.90 5.00 75.94 No
PC8 0.79 4.42 80.35 No
PC9 0.74 4.11 84.46 No
PC10 0.60 3.32 87.79 No
PC11 0.52 2.91 90.70 No
PC12 0.42 2.34 93.04 No
PC13 0.37 2.05 95.09 No
PC14 0.27 1.51 96.60 No
PC15 0.25 1.37 97.97 No
PC16 0.20 1.12 99.09 No
PC17 0.09 0.48 99.57 No
PC18 0.08 0.43 100.00 No

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La última columna aplica el criterio de Kaiser: un componente se retiene si su autovalor supera 1, es decir, si explica más varianza que una variable original estandarizada. Lo cumplen 5 componentes (PC1 a PC5), que acumulan 65,8 % de la varianza total. PC1 es el más importante: su autovalor de 5,03 (27,9 % de la varianza) equivale a la información de unas cinco variables originales, y junto con PC2 explica 42,0 %. A partir de PC3 cada componente aporta menos de 10 % y entre PC3 y PC5 las diferencias son pequeñas (de 9,4 % a 6,8 %): la información restante se reparte entre varios ejes de importancia parecida (hidrocarburos, minería, manufactura y crecimiento).

El umbral es ajustado. PC5 apenas lo supera (1,23) y PC6 queda justo por debajo (0,93, 5,2 % de la varianza); con ese componente adicional se llegaría a 70,9 %. Retener 5 componentes deja sin representar 34,2 % de la varianza, que es el costo de resumir 18 indicadores en 5 ejes con interpretación económica clara.

Figura 8. Gráfico de sedimentación y criterio de Kaiser.

eig_g <- eig
eig_g$Componente <- factor(eig_g$Componente, levels = eig_g$Componente)

p_sed <- ggplot(eig_g, aes(x = Componente, y = `Valor propio`, group = 1,
                           text = paste0(Componente,
                                         "<br>Valor propio: ", round(`Valor propio`, 2),
                                         "<br>% varianza: ", round(`% varianza`, 1)))) +
  geom_col(aes(fill = `Valor propio` > 1), width = 0.7) +
  geom_line(color = "#495589") +
  geom_point(color = "#495589", size = 2) +
  geom_hline(yintercept = 1, linetype = "dashed", color = "#2E3E6D") +
  scale_fill_manual(values = c("TRUE" = "#A98CC3", "FALSE" = "#BBD0ED"),
                    labels = c("TRUE" = "Retenido", "FALSE" = "No retenido"),
                    name = NULL) +
  labs(title = " ",
       x = NULL, y = "Valor propio") +
  theme_minimal()

ggplotly(p_sed, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

El gráfico de sedimentación muestra los valores propios de cada componente y la línea punteada marca el umbral de Kaiser (valor propio = 1). Cinco componentes lo superan (PC1 = 5,03; PC2 = 2,53; PC3 = 1,69; PC4 = 1,36; PC5 = 1,23), mientras que PC6 queda por debajo (0,93). La caída más pronunciada ocurre entre PC1 y PC2 y la curva se aplana de forma gradual desde PC3, sin un codo claro: el criterio de Kaiser es el que define el número de componentes, y PC5 (1,23) supera el umbral por poco.

4.3 Matriz de correlaciones

La Figura 9 presenta la matriz de correlaciones de Pearson de las 18 variables transformadas y fueron ordenadas por conglomerado jerárquico para que las más relacionadas queden juntas, estas son el insumo del ACP. El azul indica correlación positiva y el morado, negativa. Al pasar el cursor sobre una celda se muestran las dos variables y su correlación

Figura 9. Matriz de correlaciones.

R_c   <- cor(X)
orden <- corrMatOrder(R_c, order = "hclust")
nom   <- colnames(R_c)[orden]

df_cor <- as.data.frame(R_c[orden, orden]) %>%
  rownames_to_column("fila") %>%
  pivot_longer(-fila, names_to = "columna", values_to = "r") %>%
  mutate(fila = factor(fila, levels = nom),      
         columna = factor(columna, levels = nom))
p_cor <- ggplot(df_cor, aes(columna, fila, fill = r,
                            text = paste0("<b>Variables:</b> ", fila, " y ", columna, "<br><b>r = </b>", round(r, 2)))) +
  geom_tile(color = "white") +
  scale_fill_gradient2(low = "#C8B6E2", mid = "#E5EDFA", high = "#495589",
                       midpoint = 0, limits = c(-1, 1), name = "r") +
  labs(x = NULL, y = NULL) +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 45, hjust = 1),
        panel.grid = element_blank())

ggplotly(p_cor, tooltip = "text", height = 760)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La matriz de correlaciones muestra un bloque de desarrollo altamente cohesionado en el extremo inferior izquierdo. Las asociaciones más fuertes corresponden a la agricultura con el PIB per cápita (r = -0,89), la esperanza de vida con la mortalidad infantil (r = -0,89), y el PIB per cápita tanto con la esperanza de vida (r = 0,84) como con la mortalidad infantil (r = -0,83). Las rentas forestales (renta_bosques) también se alinean de forma coherente con un menor desarrollo relativo, registrando una correlación de (-0,71) con la esperanza de vida y una asociación positiva con la mortalidad infantil y la agricultura.

Por otra parte, la dependencia de recursos naturales no renovables se estructura en bloques sectoriales independientes del bienestar social. En primer lugar, la especialización en hidrocarburos conforma un conglomerado propio muy nítido (la renta del petróleo se asocia con la renta del gas en 0,62, y con las exportaciones de combustibles en 0,62, mostrando una neutralidad casi absoluta frente al ingreso del país (la correlación entre el PIB per cápita y la renta petrolera es de apenas 0,04).

En segundo lugar, se identifica un bloque extractivo minero diferenciado en la esquina superior derecha de la matriz, caracterizado por la fuerte relación entre la renta de minerales, las exportaciones minerales (exp_minerales) y la renta del carbón. Asimismo, los indicadores de capacidad industrial y manufacturera (manufactura, exp_manufacturas y exp_alta_tec) exhiben un acoplamiento positivo moderado entre sí, actuando como un puente de transición hacia el bloque de alto desarrollo.

La presencia de estas agrupaciones visuales tan marcadas, sumada al hecho de que solo 7 de los 153 pares de variables presentan una correlación estricta (|r|>0,7), confirma que los datos poseen la estructura y heterogeneidad necesarias para justificar la aplicación del Análisis de Componentes Principales (ACP), evitando la redundancia extrema pero garantizando una reducción dimensional eficiente

4.4 Interpretación de los componentes

4.4.1 Correlación de componentes retenidos

Al analizar las correlaciones entre las variables originales y las cargas factoriales, se puede otorgar una identidad teórica y económica clara a cada dimensión

Tabla 12. Correlación de cada variable.

cargas <- as.data.frame(res_pca$var$cor[dic$variable, 1:n_comp, drop = FALSE])
nombres_columnas <- c("Variable", paste0("PC", 1:n_comp))
tab_cargas <- kable(round(cargas, 2), digits = 2,
                    col.names = nombres_columnas,
                    caption = "(en rosa, |r| ≥ 0.5)") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)

tab_cargas <- column_spec(tab_cargas, 1, width = "15em")

for (j in seq_len(ncol(cargas))) {
  fuerte <- abs(cargas[[j]]) >= 0.5
  tab_cargas <- column_spec(tab_cargas, j + 1,
                            background = ifelse(fuerte, "#F3CBDD", "white"),
                            bold = fuerte)
}
tab_cargas %>%
  pack_rows(index = idx_grupos(dic$dimension), indent = FALSE, label_row_css = css_grupo)
(en rosa, |r| ≥ 0.5)
Variable PC1 PC2 PC3 PC4 PC5
Rentas de recursos naturales (5)
renta_petroleo 0.02 0.85 -0.25 0.07 -0.01
renta_gas 0.04 0.79 -0.14 0.14 0.18
renta_carbon 0.12 0.09 0.51 0.04 0.23
renta_minerales 0.37 0.13 0.67 0.22 0.04
renta_bosques 0.74 -0.20 -0.08 -0.01 0.09
Estructura productiva y desempeño macroeconómico (5)
agricultura 0.89 -0.14 -0.06 0.05 0.10
manufactura -0.11 -0.19 -0.22 0.71 0.29
crec_pib 0.25 -0.05 0.03 -0.15 0.78
inflacion 0.32 -0.14 0.13 0.52 -0.32
ied -0.22 -0.26 0.43 -0.28 0.28
Comercio exterior (5)
exportaciones -0.60 0.02 0.09 -0.21 0.20
exp_combustibles -0.04 0.81 0.05 0.19 0.16
exp_minerales 0.24 0.12 0.69 0.17 -0.24
exp_manufacturas -0.54 -0.52 -0.25 0.35 0.10
exp_alta_tec -0.38 -0.13 0.12 0.40 0.31
Ingreso y bienestar (3)
pib_pc -0.94 0.11 0.07 -0.02 -0.11
esp_vida -0.88 0.05 0.18 0.00 -0.08
mort_infantil 0.89 -0.01 -0.16 -0.09 -0.02

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

PC1: Este componente captura el contraste básico entre riqueza y rezago social. Está fuertemente correlacionado de forma negativa con el PIB per cápita (-0,94), la esperanza de vida (-0,88), las exportaciones totales (-0,60) y de manufacturas (-0,54). En contraposición, correlaciona positivamente con la mortalidad infantil (0,89) y la participación de la agricultura (0,89). Un valor alto en este componente caracteriza a economías rezagadas, de base agrícola y bajo nivel de ingreso.

PC2: Esta dimensión responde puramente al perfil energético de los países. Está dominada de manera exclusiva por la renta del petróleo (0,85), la renta del gas (0,79) y, consecuentemente, por la exportación de combustibles (0,81). No se asocia a indicadores de bienestar ni a otras industrias.

PC3: A diferencia de la PC2, este componente representa la riqueza del subsuelo no energética. Muestra correlaciones rosadas muy altas con la renta de minerales (0,67), la renta del carbón (0,51) y la exportación de productos minerales (0,69). Define el perfil de países típicamente mineros.

PC4: Este componente se asocia al desempeño de la economía formal e industrializada. Captura fuertemente la participación de la manufactura en el producto (0,71) y la inflación (0,52). Valores altos aquí identifican a países con un sector secundario desarrollado, aunque expuestos a presiones en el nivel de precios.

PC5: Esta última dimensión es estrictamente coyuntural. Está vinculada casi de manera única con la tasa de crecimiento del PIB (0,78). No depende de la estructura de recursos naturales ni del nivel de desarrollo de partida, sino de la velocidad a la que se está expandiendo la economía en el año analizado.

4.4.2 Círculos de correlación entre los componentes principales

Se presentan los círculos de correlaciones donde cada flecha es una de las variables, la longitud de la flecha indica su nivel de asociación con los componentes y el color indica su porcentaje de contribución a la formación del plano de proyección. Al pasar el cursor sobre la punta de una flecha se muestran sus coordenadas, su contribución y su calidad de representación (cos²).

circulo_plotly <- function(res, dims, titulo) {
  co <- res$var$cor[, dims, drop = FALSE]
  ev <- res$eig[dims, 1]
  
  mis_colores <- c("#A98CC3", "#A2B7E4", "#2E3E6D")
  
  ct <- (res$var$contrib[, dims[1]] * ev[1] + res$var$contrib[, dims[2]] * ev[2]) / sum(ev)

  df <- data.frame(var = rownames(co), x = co[, 1], y = co[, 2],
                   contrib = ct, cos2 = co[, 1]^2 + co[, 2]^2,
                   stringsAsFactors = FALSE)
  
  esc <- (df$contrib - min(df$contrib)) / (max(df$contrib) - min(df$contrib))
  df$col <- rgb(colorRamp(mis_colores)(esc), maxColorValue = 255)
  
  df$hover <- paste0("<b>", df$var, "</b>",
                     "<br>PC", dims[1], ": ", sprintf("%.2f", df$x),
                     "<br>PC", dims[2], ": ", sprintf("%.2f", df$y),
                     "<br>Contribución al plano: ", sprintf("%.1f", df$contrib), " %",
                     "<br>Calidad de representación (cos²): ", sprintf("%.2f", df$cos2))

  eje <- function(k) paste0("PC", k, " (", round(res$eig[k, 2], 1), " %)")
  th  <- seq(0, 2 * pi, length.out = 200)


  flechas <- lapply(seq_len(nrow(df)), function(i)
    list(x = df$x[i], y = df$y[i], ax = 0, ay = 0,
         xref = "x", yref = "y", axref = "x", ayref = "y",
         showarrow = TRUE, arrowhead = 2, arrowsize = 1, arrowwidth = 1.6,
         arrowcolor = df$col[i], text = ""))

  plot_ly(height = 650) %>%
    add_trace(x = cos(th), y = sin(th), type = "scatter", mode = "lines",
              line = list(color = "#7087BB", width = 1, dash = "dot"),
              hoverinfo = "none", showlegend = FALSE) %>%
    add_trace(data = df, x = ~x, y = ~y, type = "scatter", mode = "markers+text",
              text = ~var, textposition = ~ifelse(x >= 0, "middle right", "middle left"),
              textfont = list(size = 11, color = "#2E3E6D"), cliponaxis = FALSE,
              hovertext = ~hover, hoverinfo = "text",
              marker = list(size = 7, color = ~contrib,
                   
                            colorscale = list(list(0, mis_colores[1]), 
                                              list(0.5, mis_colores[2]), 
                                              list(1, mis_colores[3])),
                            cmin = min(df$contrib), cmax = max(df$contrib),
                            showscale = TRUE,
                            colorbar = list(title = "Contribución (%)", len = 0.6),
                            line = list(color = "white", width = 0.5)),
              showlegend = FALSE) %>%
    layout(title = list(text = titulo),
           xaxis = list(title = eje(dims[1]), range = c(-1.4, 1.4), zeroline = TRUE,
                        zerolinecolor = "#A98CC3", showgrid = FALSE),
           yaxis = list(title = eje(dims[2]), range = c(-1.4, 1.4), zeroline = TRUE,
                        zerolinecolor = "#A98CC3", showgrid = FALSE,
                        scaleanchor = "x", scaleratio = 1),
           annotations = flechas, plot_bgcolor = "white",
           margin = list(t = 60)) %>%
    config(displaylogo = FALSE)
}

Figura 10. Correlaciones PC1 y PC2.

circulo_plotly(res_pca, c(1, 2), "Correlación de las variables en el plano: PC1 y PC2")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Figura 11. Correlaciones PC3 y PC4.

circulo_plotly(res_pca, c(3, 4), "Correlación de las variables en el plano: PC3 y PC4")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Figura 12. Correlación de las variables en el plano: PC1 y PC5.

circulo_plotly(res_pca, c(1, 5), "Correlación de las variables en el plano: PC1 y PC5")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

El signo de un componente es arbitrario. En este informe se fijó para que PC1 tenga carga negativa en el PIB per cápita y PC2 a PC5 tengan carga positiva en la renta del petróleo, la renta de minerales, la manufactura y el crecimiento del PIB, de modo que la interpretación siguiente coincide con la tabla de cargas.

  • PC1, nivel de desarrollo y estructura productiva primaria (≈ 28 % de la varianza). Tiene cargas negativas muy altas en el PIB per cápita (−0,94) y la esperanza de vida (−0,88), y cargas positivas altas en la mortalidad infantil (+0,89), la agricultura (+0,89) y las rentas forestales (+0,74). También se asocia negativamente con el peso de las exportaciones (−0,60) y de las manufacturas en el comercio (−0,54). Es un eje de subdesarrollo: los puntajes altos corresponden a países pobres, agrícolas y con alta mortalidad infantil, y los bajos a países ricos y diversificados.
  • PC2, dependencia de hidrocarburos (≈ 14 %). Reúne las rentas del petróleo (0,85) y del gas (0,79) y las exportaciones de combustibles (0,81). Se opone a las exportaciones de manufacturas (−0,52). Identifica a los países petroleros y gasíferos.
  • PC3, dependencia de la minería (≈ 9 %). Tiene cargas altas en las rentas minerales (0,67) y del carbón (0,51) y en las exportaciones de minerales y metales (0,69). Identifica a las economías mineras.
  • PC4, estructura manufacturera (≈ 8 %). Mezcla el peso de la manufactura (0,71) y de las exportaciones de alta tecnología (0,40) con la inflación (0,52). Separa a las economías con base manufacturera de las que no la tienen; la inflación aparece asociada a ella, por lo que no distingue por sí sola a las economías estables.
  • PC5, crecimiento económico (≈ 7 %). Su carga más alta y determinante es el crecimiento del PIB (+0,78), apareciendo la inflación con una carga negativa moderada (−0,32) y las exportaciones de alta tecnología con una carga positiva (+0,31). Este componente refleja el dinamismo económico o ciclo de corto plazo de los países. Visualmente, en el nuevo círculo de correlaciones (PC1-PC5), esta componente se manifiesta como un vector limpio y vertical que se proyecta de forma aislada hacia el extremo superior del eje Y. Mientras que las variables estructurales del desarrollo (PIB per cápita y mortalidad infantil) se despliegan en toda su longitud sobre el eje X, casi la totalidad de las variables restantes (hidrocarburos, minería y manufactura) se contraen hacia el origen (0,0), demostrando que el ritmo de crecimiento económico anual es un fenómeno que se comporta de manera independiente a la matriz productiva o de recursos del país.

Un hallazgo importante es que las rentas de petróleo, gas y minerales no se asocian con el nivel de desarrollo: sus cargas en PC1 son bajas (entre 0,02 y 0,12 en valor absoluto para petróleo, gas y carbón, y 0,37 para minerales), se concentran en PC2 y PC3, y además la renta del petróleo prácticamente no se correlaciona con el PIB per cápita (0,04). Tener recursos extractivos no determina el nivel de ingreso ni de bienestar. La excepción son las rentas forestales, que cargan en PC1 (+0,74) junto con la pobreza, la agricultura y la mortalidad infantil.

4.4.3 Contribución de variables

Para identificar qué variables determinan la construcción de las dimensiones sintéticas, se evaluó el porcentaje de contribución de cada indicador respecto a un umbral teórico promedio del 5,6% (equivalente a una distribución equitativa de la varianza entre las 18 variables). Las celdas resaltadas en la tabla reflejan las variables con un impacto estadísticamente significativo en cada Componente Principal (PC)

Tabla 13. Contribución de cada variable a los componentes retenidos.

contrib <- as.data.frame(res_pca$var$contrib[dic$variable, 1:n_comp, drop = FALSE])

nombres_columnas <- c("Variable", paste0("PC", 1:n_comp))

umbral <- 100 / ncol(X)

tab_contrib <- kable(round(contrib, 1), digits = 1,
                     col.names = nombres_columnas,
                     caption = paste0("(en rosado, contribución mayor al promedio de ",
                                      round(umbral, 1), " %)")) %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)

tab_contrib <- column_spec(tab_contrib, 1, width = "15em")


for (j in seq_len(ncol(contrib))) {
  alta <- contrib[[j]] >= umbral
  tab_contrib <- column_spec(tab_contrib, j + 1,
                             background = ifelse(alta, "#F3CBDD", "white"),
                             bold = alta)
}
tab_contrib %>%
  pack_rows(index = idx_grupos(dic$dimension), indent = FALSE, label_row_css = css_grupo)
(en rosado, contribución mayor al promedio de 5.6 %)
Variable PC1 PC2 PC3 PC4 PC5
Rentas de recursos naturales (5)
renta_petroleo 0.0 28.4 3.8 0.3 0.0
renta_gas 0.0 24.6 1.1 1.4 2.7
renta_carbon 0.3 0.3 15.6 0.1 4.4
renta_minerales 2.7 0.7 27.0 3.7 0.1
renta_bosques 10.9 1.6 0.4 0.0 0.7
Estructura productiva y desempeño macroeconómico (5)
agricultura 15.7 0.8 0.2 0.2 0.9
manufactura 0.3 1.4 2.9 37.0 6.7
crec_pib 1.3 0.1 0.1 1.6 50.1
inflacion 2.0 0.8 1.0 20.1 8.2
ied 1.0 2.7 10.8 5.8 6.4
Comercio exterior (5)
exportaciones 7.3 0.0 0.5 3.4 3.1
exp_combustibles 0.0 26.2 0.1 2.6 2.0
exp_minerales 1.2 0.5 28.2 2.1 4.6
exp_manufacturas 5.7 10.5 3.8 9.1 0.8
exp_alta_tec 2.9 0.6 0.8 11.9 7.9
Ingreso y bienestar (3)
pib_pc 17.5 0.5 0.3 0.0 0.9
esp_vida 15.4 0.1 1.9 0.0 0.5
mort_infantil 15.7 0.0 1.6 0.6 0.0

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La tabla confirma qué variables definen cada componente. Las contribuciones indican cuánto aporta cada variable a la construcción del componente mas no indican el sentido (positivo o negativo).

  • PC1: Esta dimensión está construida de manera equitativa por los indicadores sociales y de ingreso. El PIB per cápita (17,5%), la mortalidad infantil (15,7%), la esperanza de vida (15,4%) y el peso de la agricultura (15,7%) son las variables que lideran este componente de forma contundente. Asimismo, las variables comerciales tradicionales como las exportaciones totales (7,3%) y las rentas de bosques (10,9%) aportan significativamente a definir este perfil estructural del desarrollo.
  • PC2: Esta dimensión está definida casi exclusivamente por tres indicadores específicos que concentran la mayor parte de su varianza: la renta del petróleo (28,4%), las exportaciones de combustibles (26,2%) y la renta de gas (24,6%). La única variable manufacturera que alcanza a superar el umbral en este componente es la exportación de manufacturas (10,5%), reflejando el peso que tienen los derivados industriales de este sector en la balanza comercial de ciertos países.
  • PC3: La tercera componente está explicada por la especialización mineral no energética de los países. Las variables con mayor fuerza matemática aquí son las exportaciones de minerales (28,2%) y la renta de minerales (27,0%), acompañadas de manera secundaria por la renta del carbón (15,6%) y la atracción de Inversión Extranjera Directa (IED, 10,8%).
  • PC4: El cuarto componente responde a la composición del sector secundario y la tecnología. Está dominado de forma contundente por el peso de la manufactura (37,0%) y el índice de inflación (20,1%), complementado por la presencia de exportaciones de alta tecnología (11,9%) y exportaciones manufactureras (9,1%).
  • PC5 Este concentra la mitad de toda su fuerza matemática en una única variable: el crecimiento del PIB (50,1%). El resto de la componente se reparte en aportes menores de variables complementarias de la dinámica macroeconómica de corto plazo, como la inflación (8,2%), las exportaciones de alta tecnología (7,9%) y la manufactura (6,7%).

Como tal cada componente queda definido por un grupo pequeño de variables que se corresponde con la interpretación de la sección anterior. Teniendo como excepcion la IED, que no domina en ningun componente.

4.4.4 Resumen de componentes

Tabla 14. Resumen de los componentes retenidos.

resumen <- tribble(
  ~Componente, ~Nombre, ~`Variables positivas`, ~`Variables negativas`, ~Interpretación,
  "PC1", "Nivel de desarrollo y estructura productiva primaria",
    "Agricultura (0.89), mortalidad infantil (0.89), rentas forestales (0.74)",
    "PIB per cápita (−0.94), esperanza de vida (−0.88), exportaciones (−0.60), exportaciones de manufacturas (−0.54)",
    "Separa a los países pobres, agrícolas y con alta mortalidad de los ricos y de mayor esperanza de vida.",
  "PC2", "Dependencia de hidrocarburos",
    "Rentas del petróleo (0.85), exportaciones de combustibles (0.81), rentas del gas (0.79)",
    "Exportaciones de manufacturas (−0.52)",
    "Identifica a los países petroleros y gasíferos, frente a los que exportan manufacturas.",
  "PC3", "Dependencia minera",
    "Exportaciones de minerales (0.69), rentas minerales (0.67), rentas del carbón (0.51)",
    "Sin cargas negativas relevantes",
    "Identifica a las economías mineras.",
  "PC4", "Estructura manufacturera",
    "Manufactura (0.71), inflación (0.52)",
    "Sin cargas negativas relevantes",
    "Separa a las economías con gran peso manufacturero y mayor inflación de las que tienen poca manufactura y menor inflación.",
  "PC5", "Crecimiento económico",
    "Crecimiento del PIB (0.78)",
    "Sin cargas negativas relevantes",
    "Separa a las economías de crecimiento rápido de las de crecimiento bajo o en contracción."
)
resumen <- resumen %>%
  mutate(`% varianza` = round(eig$`% varianza`[1:n_comp], 1), .after = Nombre)
kable(resumen,
      caption = "(variables con |r| ≥ 0.5)") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE)
(variables con |r| ≥ 0.5)
Componente Nombre % varianza Variables positivas Variables negativas Interpretación
PC1 Nivel de desarrollo y estructura productiva primaria 27.9 Agricultura (0.89), mortalidad infantil (0.89), rentas forestales (0.74) PIB per cápita (−0.94), esperanza de vida (−0.88), exportaciones (−0.60), exportaciones de manufacturas (−0.54) Separa a los países pobres, agrícolas y con alta mortalidad de los ricos y de mayor esperanza de vida.
PC2 Dependencia de hidrocarburos 14.1 Rentas del petróleo (0.85), exportaciones de combustibles (0.81), rentas del gas (0.79) Exportaciones de manufacturas (−0.52) Identifica a los países petroleros y gasíferos, frente a los que exportan manufacturas.
PC3 Dependencia minera 9.4 Exportaciones de minerales (0.69), rentas minerales (0.67), rentas del carbón (0.51) Sin cargas negativas relevantes Identifica a las economías mineras.
PC4 Estructura manufacturera 7.5 Manufactura (0.71), inflación (0.52) Sin cargas negativas relevantes Separa a las economías con gran peso manufacturero y mayor inflación de las que tienen poca manufactura y menor inflación.
PC5 Crecimiento económico 6.8 Crecimiento del PIB (0.78) Sin cargas negativas relevantes Separa a las economías de crecimiento rápido de las de crecimiento bajo o en contracción.

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

4.5 Contribución de los países

Una vez identificada la estructura factorial de los indicadores en los círculos de correlaciones, se proyecta la posición individual de los países sobre tres planos del Análisis de Componentes Principales: PC1-PC2 (Figura 13), PC3-PC4 (Figura 14) y PC1-PC5 (Figura 15). Estas representaciones permiten observar cómo se distribuyen las economías a lo largo de los cinco ejes retenidos y evaluar el grado de concentración o dispersión de la muestra. En los tres planos, la mayoría de los países se agrupa en una nube compacta cerca del origen, lo que indica perfiles cercanos al promedio. El color de cada punto indica su contribución a la construcción de los ejes: los puntos más claros son los países más alejados del centro, que más influyen en la definición de cada componente. Entre ellos destacan Qatar y Timor-Leste en la dependencia de hidrocarburos (Figura 13), Mongolia en la dependencia minera y carbonífera (Figura 14), y Timor-Leste y Zimbabue en la coyuntura de crecimiento de 2019 (Figura 15). Dado que estos casos extremos pesan mucho en los ejes, sus interpretaciones deben leerse como ilustraciones de cada dimensión y no como el comportamiento típico de la muestra.

Figura 13. Contribución de los países PC1 y PC2.

p1 <- fviz_pca_ind(res_pca, axes = c(1, 2), col.ind = "contrib",
                   gradient.cols = c("#A98CC3", "#A2B7E4", "#2E3E6D"), 
                   repel = TRUE, labelsize = 3) +
  labs(title = "Países en el plano PC1 - PC2") +
  theme_minimal()

df_p1 <- p1$data

p1_interactivo <- p1 + 
  geom_point(data = df_p1, aes(x = x, y = y, fill = contrib,
                 text = paste0("<b>País:</b> ", name, "<br>",
                               "<b>Dim 1 (X):</b> ", round(x, 2), "<br>",
                               "<b>Dim 2 (Y):</b> ", round(y, 2), "<br>",
                               "<b>Contribución (Contrib):</b> ", round(contrib, 2), "%")),
             size = 2, stroke = 0, alpha = 0.9, show.legend = FALSE)

ggplotly(p1_interactivo, tooltip = "text", height = 500)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 13 proyecta a los países sobre el primer plano factorial, que explica el 42,0 % de la varianza total. El eje horizontal (Dim1, 27,9 %) resume el nivel de desarrollo y la estructura productiva, con orientación inversa: hacia la izquierda se ubican las economías avanzadas, con alto PIB per cápita, mayor esperanza de vida y exportaciones manufactureras; hacia la derecha, los países de menores ingresos, con mayor mortalidad infantil y estructuras centradas en la agricultura y las rentas forestales. El eje vertical (Dim2, 14,1 %) refleja la dependencia de los hidrocarburos, definida por las rentas del petróleo y del gas y las exportaciones de combustibles. La mayoría de los países se agrupa en una nube compacta cerca del origen y por debajo de Dim2 = 0, mientras que las economías petroleras y gasíferas se dispersan hacia la parte superior. Los puntos más claros, que son los de mayor contribución, corresponden a los casos más alejados del centro, entre ellos los dos situados en lo más alto del plano (Dim2 ≈ 5,4 y 5,7): Qatar y Timor-Leste. Ambos combinan rentas de petróleo y gas muy altas (14,5 % y 7,9 % del PIB en Qatar; 12,6 % y 32,2 % en Timor-Leste) con más del 80 % de sus exportaciones de mercancías en combustibles. Sin embargo, se ubican en lados opuestos de Dim1: Qatar, con un PIB per cápita de 66.841 USD y una esperanza de vida de 82,9 años, en el extremo de las economías avanzadas, y Timor-Leste, con 1.562 USD y 66,5 años, en el de los países de menor ingreso. Esto indica que la dependencia de los hidrocarburos no está ligada a un nivel de desarrollo particular.

Figura 14. Contribución de los países PC3 y PC4.

p2 <- fviz_pca_ind(res_pca, axes = c(3, 4), col.ind = "contrib",
                   gradient.cols = c("#A98CC3", "#A2B7E4", "#2E3E6D"), 
                   repel = TRUE, labelsize = 3) +
  labs(title = "Países en el plano PC3 - PC4") +
  theme_minimal()

df_p2 <- p2$data

p2_interactivo <- p2 + 
  geom_point(data = df_p2, aes(x = x, y = y, fill = contrib,
                 text = paste0("<b>País:</b> ", name, "<br>",
                               "<b>Dim 3 (X):</b> ", round(x, 2), "<br>",
                               "<b>Dim 4 (Y):</b> ", round(y, 2), "<br>",
                               "<b>Contribución (Contrib):</b> ", round(contrib, 2), "%")),
             size = 2, stroke = 0, alpha = 0.9, show.legend = FALSE)

ggplotly(p2_interactivo, tooltip = "text", height = 500)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 14 proyecta a los países sobre los componentes tercero y cuarto, los cuales acumulan un 16,9 % adicional de la varianza total (9,4 % en Dim3 y 7,5 % en Dim4) y capturan dimensiones estructurales más específicas que no quedaron resueltas en el primer plano. El eje horizontal (Dim3, 9,4 %) representa la especialización minera y carbonífera, definida principalmente por las rentas de minerales, las exportaciones de minerales y metales y las rentas del carbón, mientras que los hidrocarburos permanecen cerca del origen tras haber sido absorbidos por el segundo componente. Debido al alto porcentaje de países con valores nulos o muy bajos en carbón y minería, la gran mayoría de las economías se agrupa de forma compacta alrededor del centro (Dim3 ≈ 0), y solo se proyectan hacia la derecha los países con actividad extractiva minera relevante. Sobresale de manera aislada Mongolia (Dim3 ≈ 6,9), con rentas de carbón y de minerales de 6,6 % del PIB cada una y 38,9 % de sus exportaciones en minerales, cuya magnitud rompe la escala del resto de la muestra y le da la mayor contribución sobre este eje; le sigue Australia (Dim3 ≈ 4,0). Por su parte, el eje vertical (Dim4, 7,5 %) refleja principalmente el peso de la manufactura, acompañado de la inflación y de las exportaciones de alta tecnología. En la parte superior se ubican economías como China y Corea del Sur, de base manufacturera, junto con países de alta inflación como Irán, Zimbabue y Sudán; en la inferior, economías pequeñas de servicios y turismo como Maldivas, Antigua y Barbuda, Belice y Panamá. A diferencia de la asimetría de Dim3, los países se distribuyen de manera más equilibrada a lo largo de este eje, entre −3 y +3.

Figura 15. Contribución de los países PC1 y PC5.

p3 <- fviz_pca_ind(res_pca, axes = c(1, 5), col.ind = "contrib",
                   gradient.cols = c("#A98CC3", "#A2B7E4", "#2E3E6D"), 
                   repel = TRUE, labelsize = 3) +
  labs(title = "Países en el plano PC1 - PC5") +
  theme_minimal()

df_p3 <- p3$data

p3_interactivo <- p3 + 
  geom_point(data = df_p3, aes(x = x, y = y, fill = contrib,
                 text = paste0("<b>País:</b> ", name, "<br>",
                               "<b>Dim 1 (X):</b> ", round(x, 2), "<br>",
                               "<b>Dim 5 (Y):</b> ", round(y, 2), "<br>",
                               "<b>Contribución (Contrib):</b> ", round(contrib, 2), "%")),
             size = 2, stroke = 0, alpha = 0.9, show.legend = FALSE)

ggplotly(p3_interactivo, tooltip = "text", height = 500)

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 15 cruza dos dimensiones independientes que acumulan el 34,7 % de la varianza total: el nivel de desarrollo y la estructura productiva (Dim1, 27,9 %) frente a la coyuntura de crecimiento de 2019 (Dim5, 6,8 %), eje definido principalmente por el crecimiento del PIB hacia arriba (Dim5 > 0) y, con menor peso, por la inflación hacia abajo (Dim5 < 0). Dado que en Dim1 las economías avanzadas se proyectan hacia la izquierda y los países de menores ingresos hacia la derecha, el plano permite distinguir cuatro situaciones. En el cuadrante superior izquierdo (Dim1 < 0, Dim5 > 0) se ubican economías de ingreso alto o medio con crecimiento superior al promedio, como Irlanda, Malasia y Vietnam. En el inferior izquierdo (Dim1 < 0, Dim5 < 0) aparecen economías de ingreso medio o alto con crecimiento bajo o negativo en 2019, entre ellas Líbano (−6,9 %), Libia (−11,2 %) y Macao (−2,5 %), afectadas por crisis financiera, conflicto y protestas. En el superior derecho (Dim1 > 0, Dim5 > 0) se agrupan países de menores ingresos con crecimiento por encima de la media; destaca de forma aislada Timor-Leste (Dim1 ≈ 2,7, Dim5 ≈ 4,9), con un crecimiento del PIB de 24,2 %, el más alto de la muestra. Finalmente, en el inferior derecho (Dim1 > 0, Dim5 < 0) coinciden el rezago estructural y la alta mortalidad infantil con contracción o fuerte inflación; el caso más extremo (Dim1 ≈ 3,8, Dim5 ≈ −3,8) es Zimbabue, con una caída del PIB de 6,3 % y una inflación de 255 %, seguido a menor distancia por Sudán (inflación de 51 %).

4.6 Clusterización jerárquica - método de Ward

La clusterización se hace sobre las coordenadas de los países en los 5 componentes retenidos.

scores <- as.data.frame(res_pca$ind$coord[, 1:n_comp, drop = FALSE])
d_mat  <- dist(scores, method = "euclidean")
hc     <- hclust(d_mat, method = "ward.D2")

4.6.1 Número óptimo de clusters

Para determinar el número óptimo de conglomerados en el modelo jerárquico, se evaluaron de forma simultánea dos criterios estadísticos complementarios: el índice de Silueta Promedio (gráfica izquierda) y el Criterio del Codo mediante la Altura de Fusión de Ward (gráfica derecha).

Figura 16. Selección del número de clusters por el criterio del codo y el índice de silueta promedio.

sil <- sapply(2:8, function(k) {
  cl <- cutree(hc, k = k)
  mean(silhouette(cl, d_mat)[, 3])
})
tab_sil <- data.frame(k = 2:8, silueta = round(sil, 3))

p_sil <- ggplot(tab_sil, aes(k, silueta)) +
  geom_line(color = "#A2B7E4") + 
  geom_point(size = 3, color = "#A2B7E4") +
  scale_x_continuous(breaks = 2:8) +
  labs(title = "Calidad de la agrupación según el número de grupos",
       x = "Número de clusters (k)", 
       y = "Silueta promedio") +
  theme_minimal()

alturas <- data.frame(k = 2:10, altura = rev(tail(hc$height, 9)))
p_alturas <- ggplot(alturas, aes(k, altura)) +
  geom_line(color = "#7087BB") + 
  geom_point(size = 3, color = "#7087BB") +
  scale_x_continuous(breaks = 2:10) +
  labs(title = "Diferencia interna de los grupos (Criterio del codo)",
       x = "Número de clusters (k)", 
       y = "Altura") +
  theme_minimal()

p_sil + p_alturas

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

1. Calidad de la agrupación (Silueta): Esta métrica evalúa la cohesión interna de los grupos y su nivel de separación. Al analizar el comportamiento de los datos, se observa que el punto máximo de calidad de representación se alcanza al configurar k = 3 grupos, logrando un índice de silueta promedio de 0,286. Cualquier otra partición reduce la consistencia global del agrupamiento (k = 2: 0,257; k = 4: 0,198), siendo k = 4 el valor más bajo de toda la serie entre k = 2 y k = 8.

2. Diferencia interna de los grupos (Criterio del codo): La gráfica muestra la altura de Ward a la que se unen dos grupos; cada punto k corresponde a la fusión que reduce k grupos a k − 1. Un aumento brusco indica que se están uniendo grupos que ya eran claramente distintos, por lo que el codo se busca donde la curva deja de ser plana al ir de derecha a izquierda. Pasar de 5 a 4 grupos cuesta 18,6 y de 4 a 3 grupos 19,1, es decir, casi lo mismo: hasta tres grupos la fusión casi no sacrifica homogeneidad. El salto aparece al pasar de 3 a 2 grupos (25,6) y de 2 a 1 (32,1). El codo se ubica entonces en k = 3, y no en k = 4: la silueta y el codo coinciden en favorecer tres grupos.

Figura 17. Dendrograma de Clusterización Ward.

k_final <- 4
colores_cl <- c("1" = "#F8766D", "2" = "#7CAE00", "3" = "#00BFC4", "4" = "#C77CFF")
grupos_r <- cutree(hc, k = k_final)
orden_cl <- unique(grupos_r[hc$order])   # orden en que aparecen los clusters en el dendrograma
dend <- as.dendrogram(hc)
dend <- color_branches(dend, k = k_final, col = unname(colores_cl[as.character(orden_cl)]))

datos_dend <- as.ggdend(dend)

grupos_r <- cutree(hc, k = k_final)

hojas_info <- data.frame(
  x = 1:length(hc$labels),
  y = 0,
  Pais = hc$labels[hc$order],
  Cluster_Num = grupos_r[hc$order]
)

hojas_info$Perfil <- sapply(hojas_info$Cluster_Num, function(num) {
  tamano <- sum(grupos_r == num)
  if (tamano == 53) return("Cluster 1: Primarias de bajo ingreso")
  if (tamano == 76) return("Cluster 2: Ingreso medio diversificado")
  if (tamano == 23) return("Cluster 3: Economías de hidrocarburos")
  if (tamano == 32) return("Cluster 4: Economías avanzadas")
  return(paste("Cluster", num))
})
p_dend <- ggplot() +
  geom_segment(data = datos_dend$segments, 
               aes(x = x, y = y, xend = xend, yend = yend, color = col),
               lineend = "round", show.legend = FALSE) +
  geom_point(data = hojas_info, 
             aes(x = x, y = y, 
                 text = paste0("<b>País:</b> ", Pais, "<br>",
                               "<b>Perfil:</b> ", Perfil)),
             alpha = 0, size = 2) + 
  scale_color_identity() + 
  labs(title = paste("Dendrograma Jerárquico de Ward con", k_final, "clusters"),
       x = "Países ordenados por similitud", 
       y = "Distancia Euclidiana (Altura)") +
  theme_minimal() +
  theme(axis.text.x = element_blank(), 
        axis.ticks.x = element_blank(),
        panel.grid.major.x = element_blank(),
        panel.grid.minor.x = element_blank())

ggplotly(p_dend, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La silueta promedio es máxima con k = 3 (0,286) y baja a 0,198 con k = 4, el valor más bajo de la serie. En todos los casos es inferior a 0,3, lo que indica que la estructura de grupos es débil: los países forman más bien un continuo con transiciones graduales, especialmente alrededor del cluster 2, que es el vecino más cercano de casi todos los países del cluster 1 y está a una distancia parecida de los clusters 1 y 4. Por cluster, la silueta es de 0,44 en las economías avanzadas (cluster 4) y de 0,26 en las de hidrocarburos (cluster 3), pero de solo 0,13 en las primarias de bajo ingreso (cluster 1) y de 0,12 en las de ingreso medio (cluster 2).

Los dos criterios estadísticos favorecen k = 3: la silueta es máxima en ese valor y el costo de fusionar grupos es casi plano hasta tres grupos (18,6 al pasar de 5 a 4 y 19,1 de 4 a 3) y solo salta al pasar de 3 a 2 (25,6). Con k = 3 ya se separan los países petroleros (23 países) de las economías primarias de bajo ingreso (53) y de un tercer grupo de 108 países. La solución con k = 4 está anidada en la anterior: los clusters de 23 y 53 países son idénticos y la única diferencia es que el tercer grupo se divide en economías de ingreso medio con base diversificada (76) y economías avanzadas e industrializadas (32).

Se eligió k = 4, por tanto, por criterio económico y no estadístico: esa división distingue dos perfiles muy distintos dentro del grupo grande, con ingreso medio por un lado y países ricos con exportaciones de manufacturas y alta tecnología por el otro. El costo es una silueta menor (0,198 frente a 0,286), de modo que la partición en cuatro grupos debe leerse como una tipología descriptiva y no como el número óptimo de clusters. Esta decisión debe leerse con la cautela que implica una silueta baja.

datos_cl <- datos_clean %>%
  mutate(cluster = factor(cutree(hc, k = k_final)),
         region = countrycode(codigo, "iso3c", "region",
                              custom_match = c("XKX" = "Europe & Central Asia")))
scores_cl <- scores %>% mutate(pais = rownames(.), cluster = datos_cl$cluster)

4.6.2 Segmentos en el plano factorial

Con el propósito de sintetizar la heterogeneidad observada en el espacio factorial y agrupar economías con perfiles estructurales afines, se proyectan los resultados del análisis de conglomerados sobre los mismos planos principales (Figuras 18, 19 y 20). Esta superposición permite caracterizar cuatro tipologías económicas diferenciadas y examinar cómo cada segmento se comporta tanto frente a las dimensiones estructurales de desarrollo y dependencia extractiva como ante la coyuntura macroeconómica de corto plazo.

Figura 18. Segmentos de los países: P1 y PC2.

p_cl <- ggplot(scores_cl, aes(x = Dim.1, y = Dim.2, color = cluster,
                              text = paste0(pais, "<br>Cluster: ", cluster))) +
  geom_point(size = 2.5, alpha = 0.8) +
  labs(title = "Segmentos de países en el plano PC1 - PC2",
       x = paste0("PC1 (", round(eig$`% varianza`[1], 1), " %)"),
       y = paste0("PC2 (", round(eig$`% varianza`[2], 1), " %)"),
       color = "Cluster") +
  theme_minimal()
ggplotly(p_cl, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 18 proyecta la segmentación sobre el primer plano factorial, que contrasta el nivel de desarrollo estructural (PC1, 27,9 %) con la dependencia de hidrocarburos (PC2, 14,1 %). Aunque los clusters se calcularon con los cinco componentes retenidos, en este plano se distinguen cuatro grupos, con algunas zonas de traslape. En el extremo izquierdo (PC1 < −2) se ubica el cluster 4 (morado), con economías avanzadas, altos niveles de PIB per cápita y esperanza de vida, baja mortalidad infantil y una estructura productiva diversificada, con PC2 cercano o inferior a cero (Singapur, Luxemburgo e Irlanda son los más extremos). A su derecha, en la franja central y centro-izquierda (PC1 entre −2,9 y +2,4, con PC2 bajo), se sitúa el cluster 2 (verde), de países de ingreso medio e industrialización moderada, con indicadores sociales estables pero menor riqueza y complejidad exportadora; en su borde izquierdo se mezcla con el cluster 4 (Canadá, Islandia y Bermudas). El cluster 1 (rojo), centrado en PC1 ≈ +3, agrupa a las economías primarias y rezagadas, con menores ingresos, alta mortalidad infantil y peso de la agricultura y las rentas forestales. Algunos de sus puntos suben en PC2 (Papúa Nueva Guinea, Kazajistán, Rusia, Nigeria y Uzbekistán): son economías con rentas extractivas altas que quedaron en este grupo por el resto de su perfil. Finalmente, el cluster 3 (turquesa) se despega hacia la parte superior (PC2 entre +1,5 y +5,7) e identifica a las economías más dependientes de los hidrocarburos. Este grupo se dispersa horizontalmente, tanto sobre zonas de ingreso alto (PC1 ≈ −2,8; Emiratos Árabes, Noruega y Qatar) como de rezago estructural (PC1 ≈ +1,8 a +2,7; Angola, Congo y Timor-Leste), y Colombia ocupa su borde inferior (PC2 ≈ 1,5). Esto ilustra que la abundancia de rentas petroleras no se asocia por sí sola con un nivel de desarrollo particular

Figura 19. Segmentos de los países: PC3 y PC4.

p_cl2 <- ggplot(scores_cl, aes(x = Dim.3, y = Dim.4, color = cluster,
                               text = paste0(pais, "<br>Cluster: ", cluster))) +
  geom_point(size = 2.5, alpha = 0.8) +
  labs(title = "Segmentos de países en el plano PC3 - PC4",
       x = paste0("PC3 (", round(eig$`% varianza`[3], 1), " %)"),
       y = paste0("PC4 (", round(eig$`% varianza`[4], 1), " %)"),
       color = "Cluster") +
  theme_minimal()
ggplotly(p_cl2, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 19 proyecta los segmentos sobre el segundo plano factorial, que cruza la especialización minera y carbonífera (PC3, 9,4 %) con el peso de la manufactura, acompañado por la inflación (PC4, 7,5 %). En este plano los grupos se separan menos que en el primero, algo esperable porque los clusters se calcularon con cinco componentes y estas dos dimensiones no son las que más los distinguen. La gran mayoría de los países de los clusters 2 (verde) y 4 (morado), junto con cerca de la mitad del cluster 1 (rojo), se aglutinan en un núcleo denso alrededor del origen (PC3 ≈ 0), lo que indica que para la mayor parte de los países la minería de metales y el carbón no constituyen un eje determinante de su estructura productiva. Los países del cluster 3 (turquesa) se ubican en su mayoría en la mitad izquierda del plano (19 de 23 con PC3 < 0), reflejo de que su dependencia extractiva es de hidrocarburos y no minera. En el extremo derecho (PC3 > +1,5) se proyecta un grupo disperso de 23 países, 20 de ellos del cluster 1, entre los que destacan los de perfil minero, como Mongolia (PC3 ≈ 6,9, el punto más extremo y de mayor contribución), Australia, Chile, Perú, Zambia y la República Democrática del Congo; también aparecen Luxemburgo y Chipre (cluster 4) y Montenegro (cluster 2). A lo largo del eje vertical (PC4) los segmentos se distribuyen de forma abierta y con medianas casi iguales (entre −0,07 y 0,43), por lo que este eje no discrimina entre clusters. En la parte superior (PC4 entre +2 y +3) se mezclan dos perfiles: economías manufactureras, como China y Corea del Sur, y países de inflación muy alta, como Irán, Zimbabue y Sudán. En la inferior (PC4 < −2) predominan economías pequeñas de servicios y turismo, con poca manufactura, como Maldivas, Antigua y Barbuda, Belice, Panamá, Seychelles y Macao.

Figura 20. Segmentos de los países: PC1 y PC5.

p_cl3 <- ggplot(scores_cl, aes(x = Dim.1, y = Dim.5, color = cluster,
                               text = paste0(pais, "<br>Cluster: ", cluster))) +
  geom_point(size = 2.5, alpha = 0.8) +
  labs(title = "Segmentos de países en el plano PC1 - PC5",
       x = paste0("PC1 (", round(eig$`% varianza`[1], 1), " %)"),
       y = paste0("PC5 (", round(eig$`% varianza`[5], 1), " %)"),
       color = "Cluster") +
  theme_minimal()

ggplotly(p_cl3, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 20 cruza el nivel de desarrollo estructural (PC1, 27,9 %) con la coyuntura de crecimiento de 2019 (PC5, 6,8 %), lo que permite evaluar si el dinamismo reciente se concentra en un segmento específico o se distribuye de manera transversal. El resultado es lo segundo: las medianas de PC5 de los cuatro clusters están cerca de cero (entre −0,27 y +0,33), de modo que este eje separa poco a los segmentos y las diferencias aparecen sobre todo en los extremos. El cluster 1 (rojo), ubicado hacia la derecha (PC1 centrado en +3), tiene una amplitud vertical amplia: va desde Zimbabue (PC5 ≈ −3,8; PIB −6,3 % e inflación de 255 %), Namibia, Sudán y Liberia hasta casos de crecimiento alto como Cabo Verde, Mongolia y Burkina Faso (PC5 entre +1,8 y +2,4). Sin embargo, la mayoría del grupo crece por encima del promedio (mediana de 4,9 % en 2019, la más alta de los cuatro clusters), por lo que las contracciones son la excepción. El cluster 4 (morado), en el extremo izquierdo, es el más compacto sobre este eje (PC5 entre −0,6 y +2,1): en 2019 ninguna economía avanzada se contrajo, y las de mayor crecimiento son Irlanda, Chipre y Malta. El cluster 2 (verde) se agrupa en torno al origen en la franja central, con caídas puntuales (PC5 hasta −3,0) que corresponden a crisis específicas, como Líbano (PIB −6,9 %), Macao y Argentina (inflación de 54 %), y con un extremo superior en Vietnam, Malasia y Camboya. Finalmente, el cluster 3 (turquesa) se extiende a lo largo de casi todo el eje horizontal (PC1 de −2,8 a +2,7) y tiene el menor crecimiento mediano (1,5 %); sus puntos más bajos son Libia (PIB −11,2 %), Irán (PIB −2,4 % e inflación de 40 %) y Angola, casos asociados a conflicto, sanciones e inflación más que a una tendencia común del grupo. En el extremo superior destaca de forma aislada Timor-Leste (PC1 ≈ 2,7; PC5 ≈ 4,9), con un crecimiento de 24,2 %, un valor que domina este eje y que debe verificarse antes de interpretarlo.

4.6.3 Caracterización de los clusters

La Tabla 15 muestra el cálculo de la mediana de cada indicador por cluster, en sus unidades originales, esto luego de que se caracterizará el perfil económico y social de cada grupo para entender qué los distingue. Se usó la mediana y no la media porque varios indicadores, sobre todo las rentas de recursos, tienen muchos valores en cero y unos pocos muy altos, lo que distorsionaría el promedio.

Tabla 15. Mediana de las variables por cluster (indicadores utilizados en el modelo y variables complementarias).

n_cl <- datos_cl %>% count(cluster)

perfil_v <- datos_cl %>%
  group_by(cluster) %>%
  summarise(across(all_of(vars_num), median), .groups = "drop") %>%
  pivot_longer(-cluster, names_to = "Variable", values_to = "Mediana") %>%
  pivot_wider(names_from = cluster, values_from = Mediana)

colnames(perfil_v) <- c("Variable",
                        paste0("Cluster ", n_cl$cluster))

kable(perfil_v, digits = 1,
      caption = "Se muestran las medianas calculadas con las unidades originales") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE)
Se muestran las medianas calculadas con las unidades originales
Variable Cluster 1 Cluster 2 Cluster 3 Cluster 4
rentas_totales 5.6 0.7 22.4 0.2
renta_petroleo 0.0 0.0 15.7 0.0
renta_gas 0.0 0.0 1.7 0.0
renta_carbon 0.0 0.0 0.0 0.0
renta_minerales 0.6 0.0 0.0 0.0
renta_bosques 2.2 0.2 0.1 0.0
agricultura 20.2 6.6 3.8 1.4
industria 23.8 23.1 43.5 21.7
manufactura 9.9 11.1 9.6 13.3
exportaciones 27.9 35.0 38.1 57.4
exp_combustibles 4.0 2.0 56.0 4.6
exp_minerales 7.8 2.5 2.9 2.4
exp_manufacturas 14.3 48.6 14.7 78.6
exp_alta_tec 4.9 6.3 4.4 16.7
pib_pc 1422.0 7004.9 6804.1 41341.3
crec_pib 4.9 2.5 1.5 2.4
inflacion 3.3 2.5 1.1 1.5
ied 2.5 2.7 0.9 3.6
esp_vida 65.3 74.2 75.0 82.0
mort_infantil 36.9 13.6 12.3 3.0

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

  • Cluster 1: Presenta el menor PIB per cápita mediano (1.422,0 USD), la menor esperanza de vida (65,3 años) y la mayor mortalidad infantil (36,9 por mil). Su estructura es primaria: la agricultura representa el 20,2 % del PIB y las rentas forestales el 2,2 %. Es además el único grupo con mediana positiva en renta de minerales (0,6 %) y el de mayor peso de las exportaciones mineras (7,8 %), lo que es coherente con su posición en PC3 (eje de dependencia minera). Registra también el mayor crecimiento mediano del PIB en 2019 (4,9 %), un dato de un solo año que podría asociarse a un efecto de convergencia en economías de menor ingreso, aunque esta lectura es una hipótesis y no se desprende directamente de la tabla.

  • Cluster 2: Registra un salto sustancial en bienestar respecto al primer grupo, con un PIB per cápita mediano de 7.004,9 USD, una esperanza de vida de 74,2 años y una mortalidad infantil de 13,6 por mil. No depende de rentas extractivas (0,7 % del PIB en rentas totales) y muestra una clara transición hacia la industria transformadora: las manufacturas representan casi la mitad de sus exportaciones de mercancías (48,6 %). Lo acompañan una inflación moderada (2,5 %) y un crecimiento estable (2,5 %).

  • Cluster 3: Se distingue por su dependencia de los hidrocarburos: las rentas totales equivalen al 22,4 % del PIB (petróleo 15,7 % y gas 1,7 %) y los combustibles son el 56,0 % de sus exportaciones de mercancías. Su industria pesa 43,5 % del PIB, un valor que refleja la extracción de hidrocarburos incluida en ese sector (la variable industria no entró al ACP y se usa aquí solo como descriptiva). Alcanza niveles de ingreso (6.804,1 USD) y esperanza de vida (75,0 años) muy similares a los del Cluster 2, pero presenta el menor peso de la manufactura en el PIB (9,6 %), la menor entrada de IED (0,9 %) y el menor crecimiento mediano en 2019 (1,5 %). Este perfil es consistente con una posible vulnerabilidad asociada a la especialización energética, aunque con una sola observación anual no permite afirmarlo.

  • Cluster 4: Lidera los indicadores de desarrollo humano y complejidad productiva, con un PIB per cápita mediano de 41.341,3 USD (alrededor de seis veces el de los clusters 2 y 3), una esperanza de vida de 82,0 años y una mortalidad infantil mínima (3,0 por mil). Es prácticamente independiente de las rentas naturales (0,2 % del PIB) y se apoya en una alta apertura comercial (exportaciones de 57,4 % del PIB), el mayor peso manufacturero (13,3 % del PIB), el predominio de exportaciones industriales (78,6 %) y el liderazgo en alta tecnología (16,7 % de las exportaciones manufacturadas). Mantiene además una inflación baja (1,5 %) y la mayor captación mediana de inversión extranjera directa (3,6 %).

La Figura 21 presenta el perfil de cada cluster con los valores estandarizados: cada celda muestra cuántas desviaciones estándar se aleja el promedio del grupo del promedio global en esa variable. Los tonos oscuros indican valores por encima del promedio, los tonos lavanda valores por debajo, y los tonos casi blancos, valores cercanos a él. Esta lectura permite identificar, de un vistazo, las variables que más distinguen a cada grupo y comprobar si la dependencia de recursos naturales aparece asociada o no al nivel de desarrollo.

Figura 21. Perfiles de cada cluster con los valores estandarizados.

perfil_z <- datos_t %>%
  mutate(cluster = datos_cl$cluster) %>%
  group_by(cluster) %>%
  summarise(across(all_of(vars_acp), mean), .groups = "drop") %>%
  mutate(across(all_of(vars_acp), ~ (.x - mean(X[[cur_column()]])) / sd(X[[cur_column()]]))) %>%
  pivot_longer(-cluster, names_to = "Variable", values_to = "z")

p_heat <- ggplot(perfil_z, aes(cluster, Variable, fill = z,
                               text = paste0("Cluster ", cluster, "<br>", Variable,
                                             "<br>z = ", round(z, 2)))) +
  geom_tile(color = "#E5EDFA") +
  scale_fill_gradient2(low = "#C8B6E2", mid = "#E5EDFA", high = "#495589") +
  labs(title = " ", x = "Cluster",
       y = NULL, fill = "z") +
  theme_minimal()
ggplotly(p_heat, tooltip = "text")

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

El cluster 3 es el más marcado de todo el mapa: sus rentas del petróleo (z ≈ +2,2) y del gas (+1,7) y sus exportaciones de combustibles (+1,5) están muy por encima del promedio, mientras que sus exportaciones de manufacturas (−0,8) y la inversión extranjera directa (−0,6) son las más bajas de los cuatro grupos. A pesar de ello, su PIB per cápita (+0,3), su esperanza de vida (+0,2) y su mortalidad infantil (0,0) se ubican en torno al promedio, lo que indica que la especialización en hidrocarburos no se asocia, en conjunto, ni a un bienestar excepcional ni a uno deficiente. El cluster 4 muestra el perfil opuesto al del cluster 1: PIB per cápita (+1,2), esperanza de vida (+1,1), exportaciones de manufacturas (+1,2) y de alta tecnología (+0,9) por encima del promedio, y mortalidad infantil (−1,3) y agricultura (−1,2) muy por debajo. El cluster 1, en cambio, combina bajo PIB per cápita (−1,0) y esperanza de vida (−0,9) con mayor mortalidad infantil (+0,9), agricultura (+0,9), rentas forestales (+1,0) y rentas y exportaciones de minerales (+0,9 y +0,7); además, es el grupo con mayor crecimiento del PIB en 2019 (+0,4). Finalmente, el cluster 2 es el más cercano al promedio global (ningún valor supera ±0,4 desviaciones estándar), por lo que se define más por la ausencia de especializaciones extremas que por rasgos propios, en línea con la débil estructura de grupos que indica la silueta.

Figura 22. PIB per cápita por cluster.

lg <- datos_cl %>% mutate(lg = log10(pib_pc))

res <- lg %>%
  group_by(cluster) %>%
  summarise(q1  = quantile(lg, .25),
            med = median(lg),
            q3  = quantile(lg, .75),
            lf  = min(lg[lg >= q1 - 1.5 * IQR(lg)]),
            uf  = max(lg[lg <= q3 + 1.5 * IQR(lg)]),
            .groups = "drop") %>%
  mutate(across(c(q1, med, q3, lf, uf), ~ 10^.x))

atip <- lg %>%
  group_by(cluster) %>%
  filter(lg < quantile(lg, .25) - 1.5 * IQR(lg) |
         lg > quantile(lg, .75) + 1.5 * IQR(lg)) %>%
  ungroup()

plot_ly() %>%
  add_trace(data = res, type = "box", x = ~cluster,
            q1 = ~q1, median = ~med, q3 = ~q3,
            lowerfence = ~lf, upperfence = ~uf,
            color = ~cluster,
            colors = c("#F8766D", "#7CAE00", "#00BFC4", "#C77CFF")) %>%
  add_markers(data = atip, x = ~cluster, y = ~pib_pc,
              marker = list(color = "black", size = 6),
              hoverinfo = "text",
              text = ~paste0(pais, ": US$ ", scales::comma(round(pib_pc)))) %>%
  layout(showlegend = FALSE,
         xaxis = list(title = "Cluster"),
         yaxis = list(type = "log", title = "PIB per cápita (US$, escala log)",
                      tickvals = c(1000, 10000, 100000),
                      ticktext = c("1,000", "10,000", "100,000")))

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 22 muestra una clara jerarquía de ingreso entre los clusters: las medianas son de 1.422 USD en el cluster 1, 7.005 en el 2, 6.804 en el 3 y 41.341 en el 4, es decir, el ingreso mediano del cluster avanzado es unas 29 veces el del cluster de economías primarias. Los clusters 1 y 4 son los extremos y casi no se superponen: solo Australia (55.195 USD, único atípico del cluster 1) supera el mínimo del cluster 4 (15.564 USD). El cluster 4 es además el más homogéneo (la razón entre el tercer y el primer cuartil es de 2,0, frente a 3,2 y 3,9 en los clusters 2 y 1). El cluster 2 ocupa un nivel intermedio y presenta tres atípicos de ingreso muy alto (Bermudas, Macao e Islandia), con una estructura exportadora distinta a la del cluster 4. El resultado más relevante para la pregunta de investigación es el del cluster 3: su mediana (6.804 USD) es casi igual a la del cluster 2, pero es el grupo más disperso (razón entre cuartiles de 6,6), con casos que van de Timor-Leste (1.562 USD) a Noruega (79.329 USD), de modo que la especialización en hidrocarburos no determina por sí sola un nivel de ingreso. Cabe señalar que el PIB per cápita es una de las variables usadas para formar los clusters, por lo que estas diferencias son en parte esperables por construcción y la figura sirve para describir los grupos, no para validarlos de forma independiente.

4.6.4 Composición por región y países de cada cluster

Tabla 16. Número de países por región y cluster.

tab_reg <- datos_cl %>% 
  count(cluster, region) %>%
  pivot_wider(names_from = cluster, values_from = n, values_fill = 0) %>%
  rename(Región = region)

kable(tab_reg, caption = " ") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE)
Región 1 2 3 4
East Asia & Pacific 6 15 2 4
Europe & Central Asia 7 15 2 25
Latin America & Caribbean 4 25 4 0
Middle East, North Africa, Afghanistan & Pakistan 1 7 11 2
South Asia 1 5 0 0
Sub-Saharan Africa 34 7 4 0
North America 0 2 0 1

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Tabla 16 cruza la región del Banco Mundial con el cluster asignado y muestra que la geografía y el perfil económico se relacionan, pero no coinciden. Los grupos extremos tienen un fuerte sesgo regional: 34 de los 53 países del cluster 1 (64 %) son de África subsahariana y 25 de los 32 del cluster 4 (78 %) son de Europa y Asia Central. En sentido inverso, la mayoría de los países de África subsahariana (34 de 45, 76 %) está en el cluster 1 y la de América Latina (25 de 33, 76 %) en el cluster 2, y ningún país de estas dos regiones pertenece al cluster 4. El cluster 3 es el más transversal: aunque 11 de sus 23 países (48 %) son de Medio Oriente, Norte de África, Afganistán y Pakistán, el resto se reparte entre América Latina (4), África subsahariana (4), Asia del Este y Pacífico (2) y Europa y Asia Central (2), lo que confirma que la dependencia de hidrocarburos aparece en regiones muy distintas. Europa y Asia Central es la región más dividida, con sus 49 países repartidos entre los cuatro clusters (7, 15, 2 y 25): Rusia, Kazajistán y varios países de Asia Central y el Cáucaso quedan en el cluster 1, mientras que Noruega y Azerbaiyán están en el cluster 3. Por su parte, el cluster 2 es el más heterogéneo, con presencia de las siete regiones. En conjunto, la tabla respalda que Ward agrupa por perfil económico y no por geografía, aunque la región sigue siendo una pista útil para anticipar el grupo.

Tabla 17. Países de cada cluster.

datos_cl %>% 
  group_by(cluster) %>%
  summarise(Países = paste(sort(pais), collapse = "; "), .groups = "drop") %>%
  rename(Cluster = cluster) %>%
  kable(caption = " ") %>%
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE)
Cluster Países
1 Afghanistan; Armenia; Australia; Benin; Burkina Faso; Burundi; Cabo Verde; Cameroon; Central African Republic; Chad; Chile; Congo, Dem. Rep.; Cote d’Ivoire; Ethiopia; Gambia, The; Georgia; Ghana; Guinea; Guinea-Bissau; Guyana; Jamaica; Kazakhstan; Kenya; Kiribati; Kyrgyz Republic; Lao PDR; Liberia; Madagascar; Malawi; Mali; Mauritania; Mongolia; Mozambique; Namibia; Nepal; Niger; Nigeria; Papua New Guinea; Peru; Russian Federation; Rwanda; Senegal; Sierra Leone; Solomon Islands; South Africa; Sudan; Tajikistan; Tanzania; Togo; Uganda; Uzbekistan; Zambia; Zimbabwe
2 Albania; Antigua and Barbuda; Argentina; Aruba; Bahamas, The; Bangladesh; Barbados; Belarus; Belize; Bermuda; Bhutan; Bosnia and Herzegovina; Botswana; Brazil; Bulgaria; Cambodia; Canada; China; Comoros; Costa Rica; Cuba; Djibouti; Dominica; Dominican Republic; El Salvador; Eswatini; Fiji; French Polynesia; Greece; Grenada; Guatemala; Haiti; Honduras; Iceland; India; Indonesia; Jordan; Kosovo; Latvia; Lebanon; Lesotho; Macao SAR, China; Malaysia; Maldives; Mauritius; Mexico; Moldova; Montenegro; Morocco; Myanmar; New Zealand; Nicaragua; North Macedonia; Pakistan; Panama; Paraguay; Philippines; Romania; Samoa; Sao Tome and Principe; Serbia; Seychelles; Sri Lanka; St. Kitts and Nevis; St. Lucia; St. Vincent and the Grenadines; Suriname; Thailand; Tonga; Tunisia; Turkiye; Ukraine; Uruguay; Vanuatu; Viet Nam; West Bank and Gaza
3 Algeria; Angola; Azerbaijan; Bahrain; Bolivia; Brunei Darussalam; Colombia; Congo, Rep.; Ecuador; Egypt, Arab Rep.; Equatorial Guinea; Gabon; Iran, Islamic Rep.; Iraq; Kuwait; Libya; Norway; Oman; Qatar; Saudi Arabia; Timor-Leste; Trinidad and Tobago; United Arab Emirates
4 Andorra; Austria; Belgium; Croatia; Cyprus; Czechia; Denmark; Estonia; Finland; France; Germany; Hong Kong SAR, China; Hungary; Ireland; Israel; Italy; Japan; Korea, Rep.; Lithuania; Luxembourg; Malta; Netherlands; Poland; Portugal; Singapore; Slovak Republic; Slovenia; Spain; Sweden; Switzerland; United Kingdom; United States

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Tabla 17 lista los países de cada cluster y confirma que los grupos se definen por el perfil económico más que por la región. El cluster 1 reúne sobre todo a países de África subsahariana y de Asia de bajos ingresos (Afganistán, Nepal, Laos), junto con exportadores de materias primas como Australia, Chile, Perú, Rusia, Kazajistán, Mongolia, Nigeria y Zambia. El cluster 2, el más numeroso (76 países), agrupa a gran parte de América Latina (Brasil, México, Argentina), a Asia emergente (China, India, Indonesia, Vietnam, Bangladés) y a Europa del Este y los Balcanes (Rumania, Serbia, Ucrania, Turquía), así como a economías de ingreso alto con una estructura exportadora distinta de la del grupo avanzado, como Canadá, Nueva Zelanda, Islandia, Grecia, Bermudas y Macao. El cluster 3 combina a los países petroleros del Golfo (Arabia Saudita, Emiratos Árabes Unidos, Catar, Kuwait, Baréin y Omán), del Norte de África (Argelia, Egipto y Libia), Irán, Irak, Azerbaiyán, Brunéi y Noruega, con economías de ingreso medio o bajo como Colombia, Ecuador, Bolivia, Angola, Congo, Guinea Ecuatorial, Gabón y Timor-Leste. El cluster 4 está formado por Europa occidental y nórdica y buena parte de los miembros de la Unión Europea de Europa del Este (Polonia, Chequia, Hungría, Eslovenia y Croacia), además de Estados Unidos, Japón, Corea del Sur, Singapur, Hong Kong e Israel. La tabla ilustra la lógica del modelo: países de ingreso alto como Canadá, Nueva Zelanda y Australia quedan fuera del cluster 4 por su estructura exportadora primaria, Noruega entra al cluster 3 por su dependencia del petróleo, y China e India se ubican en el cluster 2 por su ingreso medio por habitante a pesar de su peso económico. Colombia, por su parte, comparte el cluster 3 con Ecuador, Bolivia, Argelia, Angola y Noruega, que son sus pares de comparación bajo este perfil.

Figura 23. Distribución geoespacial de los clusters de países, 2019.

nombres_cl <- c("1" = "Economías primarias de bajo ingreso",
                "2" = "Ingreso medio y base diversificada",
                "3" = "Economías de hidrocarburos",
                "4" = "Economías avanzadas e industrializadas")


colores_cl <- c("1" = "#F8766D", "2" = "#7CAE00", "3" = "#00BFC4", "4" = "#C77CFF")


mapa_df <- datos_cl %>%
  mutate(
    cl_num = as.integer(as.character(cluster)),
    perfil = unname(nombres_cl[as.character(cluster)]),
    hover  = paste0(
      "<b>", pais, "</b><br>",
      "Cluster ", cl_num, ": ", perfil, "<br>",
      "Región: ", region, "<br>",
      "PIB per cápita: US$ ", formatC(round(pib_pc), format = "d", big.mark = "."), "<br>",
      "Esperanza de vida: ", formatC(esp_vida, format = "f", digits = 1, decimal.mark = ","), " años"
    )
  )


escala <- list(
  c(0,    colores_cl[["1"]]), c(0.25, colores_cl[["1"]]),
  c(0.25, colores_cl[["2"]]), c(0.50, colores_cl[["2"]]),
  c(0.50, colores_cl[["3"]]), c(0.75, colores_cl[["3"]]),
  c(0.75, colores_cl[["4"]]), c(1,    colores_cl[["4"]])
)

mapa_clusters <- plot_geo(mapa_df, height = 520) %>%
  add_trace(
    type = "choropleth",
    locations = ~codigo, locationmode = "ISO-3",
    z = ~cl_num, zmin = 0.5, zmax = 4.5,
    colorscale = escala,
    text = ~hover, hoverinfo = "text",
    marker = list(line = list(color = "white", width = 0.5)),
    colorbar = list(
      orientation = "h", x = 0.5, xanchor = "center",
      y = -0.02, yanchor = "top", len = 0.85, thickness = 14,
      tickvals = 1:4,
      ticktext = c("1 · Primarias", "2 · Ingreso medio", "3 · Hidrocarburos", "4 · Avanzadas"),
      outlinewidth = 0
    )
  ) %>%
  layout(
    title = list(text = " ", x = 0.5),
    geo = list(
      projection = list(type = "natural earth"),
      showframe = FALSE,
      showcoastlines = TRUE, coastlinecolor = "#BBBBBB",
      showcountries = TRUE, countrycolor = "#FFFFFF",
      showland = TRUE, landcolor = "#E5E5E5",
      bgcolor = "rgba(0,0,0,0)"
    ),
    margin = list(l = 0, r = 0, t = 50, b = 60)
  ) %>%
  config(displaylogo = FALSE)

mapa_clusters

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

El mapa muestra que los clusters siguen en parte la geografía, pero no se reducen a ella. El cluster 1 (economías primarias de bajo ingreso) se concentra en África subsahariana, de donde vienen 34 de sus 53 países. También aparece en Asia Central y el Cáucaso (Kazajistán, Uzbekistán, Tayikistán, Armenia, Georgia), en Rusia y Mongolia, y en Oceanía (Australia, Papúa Nueva Guinea). El cluster 2 (ingreso medio y base diversificada) es el más extendido: abarca casi toda Latinoamérica (25 países, entre ellos Brasil, México, Argentina y Uruguay), gran parte del sur y el sudeste asiático, China, India e Indonesia, y buena parte de Europa del Este y los Balcanes. El cluster 3 (economías de hidrocarburos) forma una franja continua en Medio Oriente y el norte de África (Arabia Saudita, Irán, Irak, Kuwait, Qatar, Emiratos Árabes Unidos, Argelia y Libia), con focos aislados en África central (Angola, Gabón, Guinea Ecuatorial, Congo), en el norte de Sudamérica (Colombia, Ecuador, Bolivia) y en Noruega. El cluster 4 (economías avanzadas e industrializadas) ocupa Europa occidental, central y nórdica (25 países), junto con Estados Unidos, Japón, Corea del Sur, Singapur e Israel.

Los casos que rompen el patrón regional son los más informativos. Noruega queda con los países del Golfo y no con el resto de Europa, porque su estructura exportadora depende del petróleo. Canadá y Australia, con ingresos altos, no están en el cluster 4 por el peso de sus exportaciones primarias. Chile y Perú se separan de la mayoría de Latinoamérica por su perfil minero. Colombia comparte el cluster 3 con Ecuador, Bolivia, Argelia y Noruega, aunque con un nivel de ingreso muy distinto al de este último. Esto indica que la dependencia de los recursos extractivos atraviesa continentes y niveles de ingreso, y que lo que agrupa a los países es su estructura productiva y exportadora más que su ubicación (Sachs & Warner, 1995; van der Ploeg, 2011). Aun así, la concentración del cluster 1 en África subsahariana y del cluster 4 en Europa muestra que las brechas de desarrollo siguen teniendo un fuerte componente regional.

4.7 Proyección de países nuevos según predicción

Para comprobar que el modelo sirve con países que no participaron en su construcción, se apartaron seis países (Kenia, Uruguay, Jordania, Colombia, Angola y Luxemburgo) que cubren los cuatro clusters. Con los 178 países restantes se reestimaron el ACP (5 componentes con valor propio mayor que 1) y la clusterización de Ward con cuatro grupos. Después, cada país apartado se proyectó sobre los ejes del nuevo ACP y se asignó al cluster cuyo centroide quedó más cerca según el criterio de Ward. La Tabla 18 compara ese resultado con el cluster que cada país tiene en el modelo completo.

Tabla 18. Proyección de países nuevos sobre el ACP y cluster asignado.

País Dim 1 Dim 2 Dim 3 Dim 4 Cluster predicho Cluster modelo completo Coincide
Angola -1.63 3.34 -1.33 -1.43 3 3 Sí
Colombia 0.02 1.43 0.42 -0.38 3 3 Sí
Jordan 0.69 -0.93 -0.44 -0.07 2 2 Sí
Kenya -2.66 -0.44 -0.60 -0.06 1 1 Sí
Luxembourg 4.41 -1.61 1.70 2.06 4 4 Sí
Uruguay 0.43 -0.95 -0.34 0.15 2 2 Sí

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Figuras 24 y 25. Países nuevos proyectados en el plano factorial por dimensión.

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Nota: los países en gris son los 178 usados para estimar el modelo; los de color son los países nuevos, pintados con la paleta de los clusters de la Figura 23. Los ejes pueden aparecer con el signo invertido respecto al ACP del modelo completo, lo cual no cambia las distancias.

El modelo asignó correctamente 6 de los 6 países apartados, es decir, el cluster predicho coincide con el que tienen en el modelo completo. Esto indica que la segmentación no depende de los países concretos con los que se estimó: un país nuevo, una vez proyectado sobre los componentes, cae en la zona del plano que corresponde a su perfil productivo y exportador. Kenia queda con las economías primarias de bajo ingreso, Angola con las de hidrocarburos y Luxemburgo con las avanzadas e industrializadas, mientras que Uruguay y Jordania se ubican en el cluster de ingreso medio y base diversificada.

El caso de Colombia es el más informativo. Aunque queda en el cluster de hidrocarburos, la distancia de Ward a ese centroide (2.2) es casi igual a la que tiene al cluster de ingreso medio y base diversificada, mientras que países como Kenia, Jordania o Uruguay quedan claramente más cerca de un solo centroide. Colombia es entonces un país de frontera, que combina la dependencia de los hidrocarburos con un nivel de ingreso medio, y esto es coherente con la silueta baja de la clusterización. Para efectos de política, este tipo de proyección permite ubicar a un país nuevo, o a un país en otro año, dentro de la tipología sin reestimar todo el análisis, y mostrar qué tan firme es su pertenencia a un grupo.

4.8 Patrones interesantes

Además de las características de cada cluster, el análisis deja varios patrones que atraviesan la geografía y las expectativas habituales sobre el desarrollo. Esta sección reúne cinco, cada uno con evidencia de la base de 2019.

Patrón 1. La geografía no es destino.

Tabla 19. Los seis países más cercanos a Colombia en el espacio de los componentes principales.

País Región Cluster PIB per cápita (US$) Distancia a Colombia
Ecuador Latin America & Caribbean 3 6.205 1,75
Brazil Latin America & Caribbean 2 9.030 1,79
Gabon Sub-Saharan Africa 3 7.441 1,81
Ukraine Europe & Central Asia 2 3.620 1,86
Egypt, Arab Rep.  Middle East, North Africa, Afghanistan & Pakistan 3 2.963 1,88
Russian Federation Europe & Central Asia 1 11.448 1,93

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Nota: la distancia es euclidiana sobre los componentes retenidos.

Los países que más se parecen a Colombia en el espacio de los componentes no son sus vecinos de región: entre los seis más cercanos hay países de Europa y Asia Central (Ucrania, Rusia), de África subsahariana (Gabón) y de Medio Oriente y Norte de África (Egipto), junto con Ecuador y Brasil. Colombia se parece a ellos por su estructura productiva y exportadora, y no solo a sus vecinos de Latinoamérica. La tabla de composición por región de la clusterización ya mostraba que Latinoamérica se reparte entre varios clusters (Chile y Perú en el 1, la mayoría en el 2 y Colombia, Ecuador y Bolivia en el 3), y esta tabla muestra el mismo patrón desde el punto de vista de un solo país.

Tabla 20. Países de África subsahariana que no están en el cluster 1.

País Cluster PIB per cápita (US$) Esperanza de vida (años) Rentas totales (% PIB)
Seychelles 2 19.142 74,0 0,1
Mauritius 2 11.568 74,2 0,0
Botswana 2 7.172 67,2 0,7
Eswatini 2 3.913 59,9 3,3
Sao Tome and Principe 2 1.935 68,0 2,0
Comoros 2 1.519 65,7 1,5
Lesotho 2 1.082 55,2 3,7
Gabon 3 7.441 67,3 19,2
Equatorial Guinea 3 6.804 62,3 25,4
Angola 3 2.508 63,1 28,9
Congo, Rep.  3 2.488 63,2 39,2

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

El caso contrario es África subsahariana. De sus 45 países en la base, 34 están en el cluster 1, pero los otros 11 muestran que la región no es un bloque. Angola, Congo, Gabón y Guinea Ecuatorial forman parte del cluster de hidrocarburos, con ingresos de 2.500 a 7.400 USD pero con esperanza de vida de 62 a 67 años. Mauricio y Seychelles, en el cluster 2, tienen un ingreso de 11.600 y 19.100 USD y una esperanza de vida de unos 74 años, parecida a la de economías de ingreso medio-alto de otras regiones. Botsuana (7.200 USD) también queda en el cluster 2. Sudáfrica, que suele citarse como economía intermedia, queda en el cluster 1 por su perfil minero.

Patrón 2. Costa Rica y Qatar: mucho bienestar con pocos recursos y poco bienestar con muchos.

Figura 26. PIB per cápita y esperanza de vida, por cluster.

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La paradoja que motiva el trabajo se ve en la Figura 26. Costa Rica tiene un PIB per cápita de unos 12.950 USD, rentas de recursos de apenas 0,8 % del PIB y alcanza una esperanza de vida de 80,3 años y una mortalidad infantil de 7,9 por mil, cifras cercanas a las de países con el triple o el cuádruple de ingreso. Qatar tiene un PIB per cápita de unos 66.800 USD y rentas de 22,4 % del PIB, y una esperanza de vida de 82,9 años, solo 2,6 años más que Costa Rica con cinco veces más ingreso. En el otro extremo, Guinea Ecuatorial tiene rentas de petróleo y gas altas y un PIB per cápita de 6.800 USD, y su esperanza de vida es de 62,3 años. Los recursos naturales no garantizan ni impiden un buen resultado, y por eso, como ya se vio en el análisis descriptivo, no hay relación global entre las rentas extractivas y el ingreso o la salud. El ingreso sí importa (el logaritmo del PIB per cápita explica cerca del 70 % de la variación de la esperanza de vida), pero Costa Rica muestra que un país puede ubicarse por encima de lo que su ingreso predice.

Patrón 3. Dos formas de ser rico: la concentración en un solo producto y la diversificación.

Tabla 21. Estructura exportadora de los países del Golfo frente a Singapur y Corea del Sur.

Grupo País Cluster PIB per cápita (US$) Exp. de combustibles Exp. de manufacturas Exp. de alta tecnología
Países del Golfo Kuwait 3 31.708 94,4 4,7 0,9
Países del Golfo Qatar 3 66.841 88,8 6,9 0,0
Países del Golfo Saudi Arabia 3 29.567 80,1 16,9 0,6
Países del Golfo United Arab Emirates 3 45.939 77,8 8,4 3,0
Países del Golfo Oman 3 19.180 76,3 14,7 1,5
Sin hidrocarburos Singapore 4 66.069 12,3 74,2 51,8
Sin hidrocarburos Korea, Rep.  4 33.827 7,8 87,4 32,4

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Nota: las exportaciones de combustibles y manufacturas están en % de las exportaciones de mercancías; las de alta tecnología, en % de las exportaciones de manufacturas. Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Kuwait, Qatar, Arabia Saudita, Emiratos Árabes Unidos y Omán tienen ingresos de 19.000 a 67.000 USD, pero entre 76 % y 94 % de sus exportaciones son combustibles y las manufacturas no pasan de 17 %. Su ingreso depende de un solo producto, de modo que una caída del precio del petróleo los afectaría de manera directa. Singapur y Corea del Sur no tienen rentas de hidrocarburos y exportan entre 74 % y 87 % en manufacturas, con una alta tecnología de 52 % y 32 % de esas manufacturas. Singapur y Qatar tienen casi el mismo ingreso (unos 66.000 USD) y Singapur incluso los supera en esperanza de vida y mortalidad infantil, pero su base exportadora es muy distinta, y por eso Ward los separa en clusters diferentes (el 4 y el 3). Este patrón muestra que el ingreso alto puede venir de dos estructuras muy diferentes, y que solo una de ellas diversifica el riesgo.

Patrón 4. La paradoja de la apertura comercial.

Tabla 22. Exportaciones como porcentaje del PIB: las economías más abiertas y las economías grandes.

Grupo País Cluster Exportaciones (% del PIB) PIB per cápita (US$)
Mayor apertura exportadora Luxembourg 4 206,6 112.697
Mayor apertura exportadora Hong Kong SAR, China 4 177,7 48.359
Mayor apertura exportadora Singapore 4 176,8 66.069
Mayor apertura exportadora Djibouti 2 166,7 2.837
Mayor apertura exportadora Ireland 4 131,2 81.828
Mayor apertura exportadora Malta 4 124,5 32.422
Economías grandes India 2 18,7 2.041
Economías grandes China 2 18,1 10.343
Economías grandes Japan 4 17,0 41.425
Economías grandes Brazil 2 14,1 9.030
Economías grandes United States 4 11,8 65.228

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Luxemburgo, Hong Kong, Singapur, Irlanda y Malta exportan entre 124 % y 207 % de su PIB, algo posible porque reexportan y funcionan como centros financieros y logísticos. China, India, Estados Unidos, Brasil y Japón, en cambio, exportan entre 12 % y 19 % de su PIB, porque su mercado interno absorbe la mayor parte de la producción, aunque estén entre los mayores exportadores del mundo en valor absoluto. Por lo tanto, la apertura medida como porcentaje del PIB distingue más el tamaño de la economía que su nivel de desarrollo. La apertura tampoco lleva a un cluster en particular: los cinco más abiertos con datos completos están en el cluster 4, pero Yibuti, con 167 % del PIB, queda en el cluster 2 y tiene un ingreso de 2.800 USD. Estar muy abierto al comercio es una característica de las economías pequeñas, no una garantía de ingreso alto. Cabe aclarar que varios indicadores de Yibuti fueron imputados con la mediana.

Patrón 5. Con la misma renta de hidrocarburos, la salud varía mucho.

Figura 27. Esperanza de vida frente a la esperada por el ingreso, cluster 3.

Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

Nota: la brecha es el residuo de una regresión lineal de la esperanza de vida sobre el logaritmo del PIB per cápita, con los 184 países. Fuente: World Development Indicators, Banco Mundial (2024). Elaboración propia.

La Figura 27 mide, para cada país del cluster de hidrocarburos, cuántos años vive su población por encima o por debajo de lo que predice su ingreso. Irán, Argelia, Ecuador y Colombia viven entre 4 y 6,5 años más de lo esperado, mientras que Guinea Ecuatorial (unos 10,6 años menos), Gabón, Angola, Congo y Brunéi quedan entre 5 y 6 años por debajo. Es decir, vivir de los hidrocarburos no se traduce de la misma manera en salud: depende de si la renta se convierte en servicios públicos y de cómo se distribuye. Colombia está entre los países que superan lo esperado, lo que concuerda con su posición de frontera entre las economías de hidrocarburos y las de ingreso medio, vista en la proyección de países nuevos.

4.9 Interpretación de los resultados

¿Qué componentes explican mayor variabilidad y qué representan? Los cinco componentes retenidos explican el 65,8 % de la varianza. PC1 (28 %) es el eje del nivel de desarrollo: opone a los países ricos y diversificados, con alta esperanza de vida, a los pobres, agrícolas y con alta mortalidad infantil. PC2 (14 %) representa la dependencia de los hidrocarburos y PC3 (9 %) la de la minería. PC4 (8 %) recoge la estructura manufacturera y PC5 (7 %) el crecimiento de 2019. Las dependencias de hidrocarburos y de minería son ejes distintos del nivel de desarrollo.

¿Cuántos clusters se formaron y qué los define? Se formaron cuatro grupos:

  • Cluster 1, economías primarias de bajo ingreso (53 países). Mediana de PIB per cápita de 1.422 USD, esperanza de vida de 65,3 años, mortalidad infantil de 36,9 por mil y agricultura de 20,2 % del PIB. Es sobre todo África subsahariana (34 países) y concentra la mayor renta de minerales mediana y la mayor renta forestal mediana (2,2 % del PIB, frente a 0,2 % o menos en los demás grupos). También incluye exportadores de materias primas como Rusia, Kazajistán, Mongolia, Chile, Perú, Australia y Nigeria.
  • Cluster 2, ingreso medio y base diversificada (76 países). PIB per cápita de 7.005 USD, esperanza de vida de 74,2 años, mortalidad infantil de 13,6 y manufacturas en 48,6 % de las exportaciones. Predominan Latinoamérica (25), Europa y Asia Central (15) y Asia del Este y Pacífico (15), con países como Brasil, México, China, India e Indonesia.
  • Cluster 3, economías de hidrocarburos (23 países). Renta de petróleo mediana de 15,7 % del PIB, PIB per cápita de 6.804 USD y esperanza de vida de 75,0 años, pero solo 14,7 % de manufacturas en las exportaciones. Reúne a 11 países de Medio Oriente y Norte de África (entre ellos Qatar y Emiratos Árabes Unidos) y a otros como Colombia, Ecuador, Bolivia, Angola, Noruega y Azerbaiyán.
  • Cluster 4, economías avanzadas e industrializadas (32 países). PIB per cápita de 41.341 USD, esperanza de vida de 82,0 años, mortalidad infantil de 3,0, manufacturas en 78,6 % de las exportaciones y alta tecnología en 16,7 % de las manufacturas. Es principalmente Europa (25 países), con Estados Unidos, Japón, Corea del Sur y Singapur.

¿Qué patrones aparecen?

  • El nivel de desarrollo organiza los grupos más que la región, aunque se superponen: el cluster 1 es sobre todo africano (34 de 53 países) y el cluster 4 sobre todo europeo (25 de 32), pero los clusters 2 y 3 mezclan regiones.
  • Ser rico no basta para quedar en el grupo desarrollado. Canadá y Australia, con ingresos altos, no están en el cluster 4: su estructura exportadora es primaria. En cambio, Noruega (79.329 USD) queda en el cluster 3 por su dependencia del petróleo.
  • Los países extractivos no son un bloque homogéneo. En el cluster 3 hay países con buena salud (Kuwait, Omán, Emiratos, Noruega) y otros con resultados muy por debajo de su ingreso (Guinea Ecuatorial, Angola, Congo). Nigeria, Chad y Rusia, con rentas altas, quedaron en el cluster 1 por el resto de su perfil.
  • La inflación mediana es baja en todos los grupos (entre 1,1 % y 3,3 %), por lo que la inestabilidad de precios no distingue a los países extractivos en 2019.
  • Colombia pertenece al cluster 3 (renta de petróleo de 3,1 % del PIB, esperanza de vida de 76,8 años y solo 21,1 % de manufacturas en sus exportaciones). Comparte cluster con Ecuador, Bolivia, Argelia y Noruega, aunque Noruega tiene un ingreso mucho mayor (79.329 USD frente a 6.472 USD de Colombia).

5 Conclusiones

Respuesta central. El análisis muestra que la dependencia de los recursos naturales y el nivel de desarrollo son dimensiones distintas, y no dos caras de una misma. El ACP lo expresa de forma directa: el primer componente (28 % de la varianza) es el eje del desarrollo, mientras que los hidrocarburos (PC2, 14 %) y la minería (PC3, 9 %) aparecen como ejes propios, independientes de él. Esto implica algo más que una correlación baja: saber cuánto petróleo, gas o minerales extrae un país casi no dice dónde está en el eje de bienestar (la renta del petróleo y el PIB per cápita tienen una correlación de 0,04, y la correlación de Spearman entre las rentas de petróleo, gas y minerales y el PIB per cápita es de −0,08). Lo que sí lo ubica es el resto de su estructura: el peso de la agricultura, de la manufactura y la complejidad de sus exportaciones. Por eso la respuesta a la pregunta de investigación no es “maldición” ni “bendición”: depende de qué más tiene el país además de sus recursos.

La excepción forestal y lo que dice sobre la “maldición”. Las rentas forestales sí se asocian con menor ingreso y salud (Spearman de −0,71 con el PIB per cápita, frente a −0,11 para las otras cuatro rentas juntas) y cargan en PC1 (+0,74) junto con la agricultura y la mortalidad infantil. Una lectura posible, que los datos sustentan solo de forma descriptiva, es que las rentas forestales funcionan como un marcador de economía rural de bajo ingreso y no como una renta extraordinaria como la del petróleo; la asociación con la pobreza reflejaría entonces el tipo de economía y no un efecto de extraer. Esto matiza la hipótesis de la maldición de los recursos: en 2019 el patrón no aparece en las rentas de petróleo, gas y minerales, que son las que más suelen asociarse con ese debate.

Lo que enseñan las distribuciones y los valores atípicos (Figuras 1 a 5). El exceso de ceros (64 % de los países sin renta de carbón, 52 % sin minerales, 47 % sin gas y 36 % sin petróleo) muestra que la dependencia extractiva es un fenómeno de pocos países con valores muy altos y no un gradiente continuo entre todos. Por eso 140 de los 190 atípicos detectados (74 %) corresponden a rentas: allí el atípico no es un dato anómalo sino el país productor, que es justamente el objeto de estudio, y por eso se conservó en el análisis. La consecuencia es que PC2 y PC3 se apoyan en pocos casos extremos (Qatar y Timor-Leste, Mongolia) y deben leerse como ejes de especialización, no como escalas graduales. Los atípicos de la inversión extranjera directa (Chipre, Luxemburgo y Malta) son de otra naturaleza: reflejan flujos de centros financieros pequeños y no inversión productiva, lo que ayuda a entender por qué la IED no domina ningún componente.

Ingreso, salud y región (Figuras 6 y 7). La relación entre el PIB per cápita (en logaritmo) y la esperanza de vida (r = 0,84) muestra rendimientos decrecientes: cada vez que el ingreso se multiplica por 10, la esperanza de vida sube unos 11 años, pero la dispersión pasa de 7,7 años en los países con menos de 1.000 USD a 3,3 por encima de 12.000 USD. Esto es lo más relevante para la pregunta: con ingresos bajos el ingreso no determina el bienestar, y es ahí donde queda más espacio para que otros factores, entre ellos los recursos, marquen la diferencia. El efecto de los recursos extractivos sobre esa conversión es pequeño en promedio (residuo medio de −1,3 años en los 32 países con rentas extractivas de al menos 5 % del PIB, frente a +0,3 en el resto) pero muy heterogéneo, desde +6,5 años en Irán hasta −16,3 en Nigeria. La diferencia está en la dispersión y no en el promedio. Con la región ocurre algo parecido: explica el 45 % de la varianza del ingreso, pero el 55 % restante ocurre dentro de las regiones, y Medio Oriente y Norte de África, la región con la mediana más alta de rentas de recursos (5,55 % del PIB), es también una de las de mayor desigualdad de ingreso entre sus países (razón entre cuartiles de 8,4).

Qué agrega el ACP (Figuras 8 a 15). Cinco componentes recogen 65,8 % de la varianza y dejan sin representar 34,2 %; no hay un codo claro y PC5 supera el criterio de Kaiser por poco (1,23). Esto indica que la estructura es genuinamente multidimensional y que ningún índice único de “dependencia de recursos” la resumiría: hidrocarburos y minería responden a lógicas distintas y no se solapan con el bienestar. La matriz de correlaciones (Figura 9) lo respalda: solo 7 de los 153 pares superan |r| = 0,7, y las asociaciones más fuertes son las del bloque de desarrollo. Los planos de países ilustran esa independencia mejor que cualquier coeficiente. Qatar y Timor-Leste alcanzan alturas casi iguales en PC2, pero quedan en lados opuestos de PC1 (66.841 y 1.562 USD): la misma dependencia de hidrocarburos convive con niveles de desarrollo opuestos. En el plano PC1-PC5, Zimbabue (PIB −6,3 % e inflación de 255 %) y Timor-Leste (crecimiento de 24,2 %) comparten el lado del rezago estructural pero están en extremos opuestos de PC5, lo que muestra que el crecimiento de 2019 es un fenómeno de coyuntura que no se alinea con el tipo de recursos ni con el nivel de desarrollo. Por la misma razón, PC4 (manufactura e inflación) no separa a los clusters: la inflación no es una señal propia de ningún tipo de economía.

Qué tan sólida es la segmentación (Figuras 16 a 20). La silueta es baja (0,198 con k = 4 y 0,286 con k = 3), y tanto la silueta como el criterio del codo favorecen k = 3: pasar de cinco a cuatro y de cuatro a tres grupos casi no cuesta homogeneidad, y el salto aparece solo al pasar de tres a dos. Se mantuvo k = 4 por criterio económico (dividir el grupo grande de 108 países en 76 de ingreso medio y 32 avanzados), a costa de una silueta menor. La lectura honesta es que los países forman dos polos bien definidos y un continuo entre ellos: las economías avanzadas (silueta de 0,44) y las de hidrocarburos (0,26) son perfiles reales y distinguibles, mientras que las primarias de bajo ingreso (0,13) y las de ingreso medio (0,12) tienen fronteras difusas y muchos países en el límite. El plano PC1-PC2 (Figura 18) muestra además la razón de ser del cluster 3: se separa verticalmente por los hidrocarburos pero se extiende horizontalmente a lo largo de casi todo PC1 (de −2,8 a +2,7), es decir, agrupa países de niveles de desarrollo muy distintos por una sola característica compartida. Por eso la tipología debe usarse como una herramienta para ubicar y comparar países, no como una clasificación rígida.

Dónde se nota el costo de la especialización (Figuras 21 y 22). El perfil estandarizado del cluster 3 es el hallazgo más informativo del modelo: sus rentas de petróleo (+2,2), de gas (+1,7) y sus exportaciones de combustibles (+1,5) están muy por encima del promedio, pero su PIB per cápita (+0,3), su esperanza de vida (+0,2) y su mortalidad infantil (0,0) están en torno a él. En cambio, tiene las exportaciones de manufacturas (−0,8) y la IED (−0,6) más bajas de los cuatro grupos. El costo de la especialización en hidrocarburos no aparece, entonces, en el bienestar medido en 2019, sino en la diversificación productiva. Su mediana de ingreso (6.804 USD) es casi igual a la del cluster 2 (7.005 USD), pero con 14,7 % de manufacturas en las exportaciones frente a 48,6 %: el mismo ingreso se sostiene sobre bases muy distintas. La Figura 22 añade un segundo matiz: el cluster 4 es el más homogéneo (razón entre cuartiles de 2,0), mientras que el cluster 3 es el más disperso (6,6), con casos que van de Timor-Leste (1.562 USD) a Noruega (79.329 USD). Una estructura exportadora diversificada se asocia con resultados parecidos entre países, y una concentrada con resultados que dependen de factores distintos al recurso. Esta lectura tiene una cautela: el PIB per cápita entra en la formación de los clusters, por lo que parte de estas diferencias es esperable por construcción.

Geografía y excepciones (Figuras 23 a 27). El mapa muestra que los clusters siguen en parte la geografía (34 de los 53 países del cluster 1 son africanos y 25 de los 32 del cluster 4 son europeos), pero lo más informativo son los casos que rompen el patrón. Noruega queda con los países del Golfo, Canadá y Australia quedan fuera del cluster avanzado por su base exportadora primaria, Chile y Perú se separan de Latinoamérica por su perfil minero, y 11 de los 45 países de África subsahariana no están en el cluster 1. El cluster 3 reúne a 11 países de Medio Oriente y Norte de África, pero el resto proviene de otras cuatro regiones: la dependencia de hidrocarburos no es un rasgo regional sino productivo. La Figura 27 muestra que incluso dentro de este grupo el resultado en salud no sigue al recurso: Irán, Argelia, Ecuador y Colombia viven entre 4 y 6,5 años más de lo que predice su ingreso, y Guinea Ecuatorial unos 10,6 años menos. Los datos no permiten explicar esa brecha. Una hipótesis, que este estudio no contrasta, es que depende de factores ausentes del modelo, como la calidad institucional o la forma en que la renta se convierte en servicios públicos.

Ingreso alto con estructuras distintas. Kuwait, Qatar, Arabia Saudita, Emiratos Árabes Unidos y Omán obtienen entre 76 % y 94 % de sus exportaciones en combustibles, mientras que Singapur y Corea del Sur exportan entre 74 % y 87 % en manufacturas, con alta tecnología de 52 % y 32 % de ellas. Singapur y Qatar tienen casi el mismo ingreso (unos 66.000 USD) y Ward los separa en clusters distintos, porque solo la segunda estructura diversifica el riesgo frente a una caída del precio del petróleo. El ingreso, por sí solo, oculta esa diferencia de riesgo. Costa Rica ilustra el caso opuesto: con un PIB per cápita de unos 12.950 USD y rentas de recursos de 0,8 % del PIB, alcanza una esperanza de vida de 80,3 años, apenas 2,6 menos que Qatar con cinco veces más ingreso. Algo similar ocurre con la apertura comercial: Luxemburgo, Hong Kong o Singapur exportan entre 124 % y 207 % del PIB, y China, India o Estados Unidos entre 12 % y 19 %, de modo que la apertura distingue el tamaño de la economía más que su nivel de desarrollo.

Respuesta a la pregunta de investigación. La pregunta tiene tres partes y la evidencia es distinta en cada una. (1) ¿Se asocia el sustento en recursos con menor bienestar? No de forma general: la asociación es prácticamente nula para petróleo, gas y minerales, y aparece solo en las rentas forestales, que parecen marcar economías rurales de bajo ingreso. (2) ¿Se asocia con mayor inestabilidad? No se puede afirmar. La inflación mediana es baja en todos los grupos (entre 1,1 % y 3,3 %), y el único indicio es que el cluster 3 tiene el menor crecimiento mediano de 2019 (1,5 %, frente a 4,9 % en el cluster 1), lo que con un solo año no distingue una vulnerabilidad estructural de un ciclo puntual. También es cierto que seis de los ocho países atípicos en cuatro o más indicadores combinan rentas atípicas con inflación, crecimiento o IED atípicos, pero son pocos casos y no permiten generalizar. (3) ¿Pueden los países extractivos consolidar su desarrollo? Sí en bienestar: Noruega y los países del Golfo lo logran, y el cluster 3 alcanza en conjunto niveles similares a los de ingreso medio. Pero ese bienestar convive con canastas exportadoras poco diversificadas (14,7 % de manufacturas, frente a 48,6 % y 78,6 % de los clusters 2 y 4), y hay casos que no lo consolidan (Guinea Ecuatorial, Nigeria, Chad). La conclusión es que la riqueza en recursos extractivos no es una maldición ni una garantía, y que la verdadera diferencia entre los países extractivos está en si logran diversificar su estructura y convertir la renta en bienestar.

El caso de Colombia. Colombia queda en el cluster de hidrocarburos con una renta de petróleo de apenas 3,1 % del PIB, en el borde inferior del grupo sobre PC2, y su esperanza de vida (76,8 años) está 4,1 años por encima de lo que predice su ingreso. Lo que la ubica en este grupo es su estructura exportadora (21,1 % de manufacturas en las exportaciones, muy por debajo del 48,6 % y 78,6 % de los clusters 2 y 4) y no sus resultados sociales. La proyección de países nuevos añade que su distancia al centroide de hidrocarburos (2,2) es casi igual a la que tiene al de ingreso medio diversificado, por lo que es un país de frontera. En conjunto, los datos sugieren que el reto de Colombia, frente a sus pares (Ecuador, Bolivia, Argelia y Noruega en el cluster, y Ecuador, Brasil, Gabón, Ucrania, Egipto y Rusia entre los más cercanos en el espacio de los componentes), no está en convertir su ingreso en salud, donde está por encima de lo esperado, sino en la diversificación de su base exportadora. Esta lectura es descriptiva y no implica relaciones causales.

Estabilidad de la segmentación. Para comprobar que los clusters no dependen de los países con los que se estimó el modelo, se apartaron seis países (Kenia, Uruguay, Jordania, Colombia, Angola y Luxemburgo), se reestimaron el ACP y Ward con los 178 restantes y los seis se proyectaron sobre los nuevos componentes. Los seis cayeron en el mismo cluster que tienen en el modelo completo, incluido Colombia, que cae en su cluster pero como caso de frontera, de manera coherente con la silueta baja. La prueba muestra estabilidad, pero con solo seis países no mide la precisión de la clasificación.

Limitaciones. El estudio usa un solo año (2019), y la inestabilidad se aproxima solo con la inflación y el crecimiento del PIB de ese año, que no miden volatilidad en el tiempo; por eso la parte de la pregunta sobre una mayor inestabilidad no puede responderse de forma firme con este diseño. La silueta promedio es baja (0,198 con k = 4), lo que indica grupos poco separados; además, la silueta y el codo favorecen k = 3, de modo que el k = 4 elegido responde a un criterio económico. Algunos países relevantes para un estudio de recursos naturales (Venezuela, Turkmenistán, Sudán del Sur, Yemen y Eritrea) no figuran en la base por datos faltantes, y en el mapa aparecen en gris, junto con algunos territorios muy pequeños, como Kosovo, que pueden no dibujarse. Las 116 celdas imputadas con la mediana global acercan a esos países al centro de la distribución: por ejemplo, Afganistán y Andorra comparten el mismo valor de exportaciones (35,04 % del PIB), Bangladesh tiene varias variables de comercio iguales a la mediana y lo mismo ocurre con economías pequeñas como Yibuti, cuya ubicación debe leerse con cautela. La República Centroafricana aparece con una esperanza de vida de 31,5 años, un valor que parece un error de captura y que explica buena parte de la asimetría de esa variable (−1,00 con el país y −0,42 sin él); debe verificarse en el DataBank. Algo similar ocurre con la renta del carbón de Cabo Verde (12,8 % del PIB), que parece un error de la fuente porque el país no tiene minería de carbón: es el valor más extremo de todo el análisis (8,7 desviaciones estándar) y puede influir en PC3 y en la ubicación de Cabo Verde, por lo que también debe verificarse. Además, el PIB per cápita es un promedio que no refleja la desigualdad, las rentas de recursos mantienen mucha asimetría tras la transformación, y los resultados son descriptivos y no establecen causalidad.

Posibles usos reales y próximos pasos. Este tipo de análisis sirve para: (1) comparar a un país con sus pares de perfil económico parecido y no solo con los de su región, como Colombia con Ecuador, Bolivia o Noruega; (2) identificar qué países dependen más de pocos productos primarios y requieren políticas de diversificación; (3) orientar la cooperación y la inversión según el tipo de economía; (4) ubicar a un país nuevo en la tipología proyectándolo sobre los componentes ya estimados, sin repetir todo el análisis, y ver qué tan firme es su pertenencia a un grupo; y (5) monitorear si un país cambia de grupo a lo largo del tiempo, repitiendo el análisis con otros años. Como siguientes pasos, las limitaciones señalan tres mejoras: usar una serie de varios años para medir la volatilidad y poder responder la parte de la pregunta sobre inestabilidad; incorporar variables que el modelo no tiene (calidad institucional y distribución del ingreso) para explorar por qué países con la misma renta de hidrocarburos tienen resultados de salud tan distintos; y verificar los valores sospechosos de la República Centroafricana y Cabo Verde y repetir el análisis sin ellos para comprobar que los clusters no cambian.

6 Bibliografía