1 Evaluación del indicador PIB a nivel distrital

La presente evaluación tiene como objetivo analizar el comportamiento estadístico y la consistencia territorial del indicador de tamaño económico construido a partir del escalonamiento del Producto Bruto Interno (PBI) a nivel distrital. Este análisis busca contrastar los resultados del indicador con otras variables asociadas a la estructura socioeconómica del territorio, específicamente el Índice de Desarrollo Humano (IDH) y el índice de densidad de estado (IDE), así como otros indicadores económicos, con el fin de evaluar su pertinencia teórica y su capacidad explicativa dentro del análisis de jerarquía de centros y núcleos poblados.

Para ello, se desarrolló un análisis exploratorio de datos orientado a examinar la distribución, variabilidad y relaciones estadísticas entre los indicadores seleccionados. Considerando las características heterogéneas propias de las variables territoriales, se incorporaron pruebas de normalidad, transformaciones logarítmicas y análisis de correlación no paramétrica mediante el coeficiente de Spearman, buscando garantizar una interpretación robusta de las relaciones observadas y validar la utilidad analítica del indicador económico propuesto.

1.1 Carga de datos

Para la evaluación del indicador de PIB a nivel distrital, se incorporaron a la base de datos del shapefile cuatro variables complementarias: 1) el Índice de Desarrollo Humano (IDH), 2) el Índice de Densidad del Estado (IDE), 3) la Población Economicamente activa ocupada (PEAO) y 4) La concentración de actividades económicas (CIIU).

Asimismo, en los anexos se presenta además el análisis con todos los indicadores que integran los índices compuestos de desarrollo humano y densidad del estado.

df_pib <- st_read("C:/Users/linaje_sdot/Documents/Pruebas_R/BD_validacion_pib6/BD_validacion_pib6.shp")
## Reading layer `BD_validacion_pib6' from data source 
##   `C:\Users\linaje_sdot\Documents\Pruebas_R\BD_validacion_pib6\BD_validacion_pib6.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 1893 features and 62 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: -203260.8 ymin: 7964769 xmax: 1190991 ymax: 9995733
## Projected CRS: WGS 84 / UTM zone 18S
#glimpse(df_pib)

1.2 Estadística descriptiva de los indicadores

Los estadísticas descriptivas muestran comportamientos diferenciados entre las variables originales analizadas. La población distrital presenta la mayor heterogeneidad, con valores que oscilan entre 149 y más de un millón de habitantes, evidenciando una estructura territorial altamente desigual en términos demográficos. Esta dispersión refleja la coexistencia de pequeños distritos rurales junto con grandes concentraciones urbanas y metropolitanas. En contraste, el Índice de Densidad del Estado (IDE) y el Índice de Desarrollo Humano (IDH) exhiben distribuciones considerablemente más homogéneas, con rangos acotados entre 0 y 1 y medias relativamente próximas a sus medianas. Esta diferencia responde a la naturaleza de las variables: mientras la población corresponde a un valor absoluto que captura magnitudes reales altamente desiguales entre territorios, el IDE y el IDH constituyen indicadores compuestos estandarizados, diseñados para representar condiciones relativas de desarrollo y presencia estatal dentro de un intervalo acotado.

Debido a la elevada heterogeneidad observada en las variables socioeconómicas, se aplicó una transformación logarítmica al PBI distrital, la población, la PEAO y las actividades económicas registradas (CIIU), reduciendo el sesgo asociado a valores extremos. Los resultados muestran distribuciones más equilibradas y estables, con medias y medianas más próximas entre sí y una menor amplitud relativa entre valores mínimos y máximos. Este ajuste permite representar de manera más adecuada las relaciones entre variables territoriales de distinta escala, evitando que los grandes centros urbanos dominen el comportamiento estadístico del conjunto y fortaleciendo la robustez analítica, para los ejercicios posteriores de correlación estadística y jerarquía territorial.

# Seleccionar variables numéricas de interés
indicadores <- df_pib %>%
  st_drop_geometry() %>%
  select(
    nombdst,
    regn_nt,
    IDH2017,
    IDE,
    espvida201,
    X18sec2017,
    educ2017,
    acc_agua,
    acc_luz,
    X12_16_sec,
    pob_60_sec,
    I_edu,
    pob_60_sal,
    I_salud,
    pob_60_com,
    I_segur,
    Acc_conect,
    pob_60_ciu,
    I_conect,
    PBI_dist,
    PEAO2017_2,
    T_CIIU,
    Pob2017,
    Pob_2024,
    ingpc2017,
    med_10M,
    polic_100M,
    T_Act,

  ) %>%
  na.omit()

#Log de indicadores
indicadores_log <- indicadores %>%
  mutate(
    log_PBI = log1p(PBI_dist),
    log_PEAO = log1p(PEAO2017_2),
    log_CIIU = log1p(T_Act),
    log_POB2017 = log1p(Pob2017),
    log_POB2024 = log1p(Pob_2024),
    log_ingpc = log1p(ingpc2017),
  )

# Matriz para evaluación indicadores IDH
indicadores_IDH <- indicadores_log %>%
  select(
    # indicadores
    IDH2017,
    espvida201,
    X18sec2017,
    educ2017,
   
    # SOLO logs 
    log_PBI,
    log_POB2017,
    log_ingpc,
   )

# Matriz para evaluación indicadores IDE
indicadores_IDE <- indicadores_log %>%
  select(
    # indicadores sociales 
    IDE,
    acc_agua,
    acc_luz,
    I_edu,
    I_salud,
    I_segur,
    I_conect,
    X12_16_sec,
    pob_60_sec,
    pob_60_sal,
    pob_60_com,
    pob_60_ciu,
    Acc_conect,
    med_10M,
    polic_100M,
    
    # SOLO logs 
    log_PBI,
    log_POB2024,
   )

# Matriz para evaluación indicadores económicos
indicadores_E <- indicadores_log %>%
  select(
    # SOLO logs 
    log_PBI,
    log_POB2017,
    log_PEAO,
    log_CIIU,
   )

# Matriz evaluación final
indicadores_VF <- indicadores_log %>%
  select(
    # indicadores sociales 
    Pob2017,
    IDE,
    IDH2017,
    # SOLO logs 
    log_PBI,
    log_POB2017,
    log_PEAO,
    log_CIIU,
   )
# Ver estructura VF
summary(indicadores_VF)
##     Pob2017             IDE            IDH2017          log_PBI      
##  Min.   :    149   Min.   :0.1300   Min.   :0.1000   Min.   : 7.433  
##  1st Qu.:   1527   1st Qu.:0.4500   1st Qu.:0.3000   1st Qu.: 9.687  
##  Median :   3830   Median :0.5600   Median :0.3800   Median :10.502  
##  Mean   :  15682   Mean   :0.5868   Mean   :0.4044   Mean   :10.736  
##  3rd Qu.:   9889   3rd Qu.:0.7300   3rd Qu.:0.5000   3rd Qu.:11.517  
##  Max.   :1038495   Max.   :0.9900   Max.   :0.8400   Max.   :16.782  
##   log_POB2017        log_PEAO         log_CIIU     
##  Min.   : 5.011   Min.   : 3.784   Min.   : 0.000  
##  1st Qu.: 7.332   1st Qu.: 6.307   1st Qu.: 4.143  
##  Median : 8.251   Median : 7.232   Median : 4.931  
##  Mean   : 8.356   Mean   : 7.392   Mean   : 5.112  
##  3rd Qu.: 9.199   3rd Qu.: 8.216   3rd Qu.: 5.869  
##  Max.   :13.853   Max.   :13.191   Max.   :10.152

1.3 Análisis de Normalidad

El análisis de asimetría (skewness) y curtosis evidencia que las variables transformadas presentan propiedades distributivas compatibles con parámetros estadísticos aceptables para análisis multivariados. En términos generales, valores de asimetría cercanos a 0 indican distribuciones simétricas, mientras que valores absolutos menores a 1 suelen considerarse adecuados para aproximaciones de normalidad. De forma similar, valores de curtosis próximos a 0 reflejan distribuciones comparables a la normal y sin concentraciones extremas de valores atípicos. Bajo estos criterios, las variables transformadas mediante logaritmos registran coeficientes de asimetría moderados, entre 0.54 y 0.88, y curtosis bajas, entre 0.30 y 0.93, evidenciando una reducción sustancial del sesgo y de la dispersión extrema observada en las variables originales. Asimismo, los indicadores compuestos IDE e IDH presentan valores de asimetría bajos (0.13 y 0.48, respectivamente) y curtosis cercanas a cero, confirmando distribuciones relativamente estables y homogéneas. En conjunto, estos resultados muestran que las transformaciones aplicadas permiten mejorar significativamente las propiedades estadísticas de las variables utilizadas en el análisis.

Por su parte, la prueba de normalidad de Shapiro-Wilk indica que ninguna de las variables analizadas sigue una distribución normal estricta, dado que en todos los casos los valores de significancia son inferiores a 0.05. No obstante, los resultados muestran diferencias importantes en el grado de desviación respecto a la normalidad. Las variables transformadas logarítmicamente alcanzan valores W considerablemente más altos, particularmente log_POB2017 (0.980), log_PEAO (0.970) y log_CIIU (0.969), reflejando distribuciones más próximas a la normalidad y una reducción significativa del sesgo observado con las variables originales. Pese a esta mejora distributiva, se utilizará el método de correlación Spearma, considerando la persistencia de asimetrías moderadas y la naturaleza jerárquica y no necesariamente lineal de las relaciones territoriales.

# Estadísticas descriptivas
describe(indicadores_VF)
# Prueba de normalidad Shapiro-Wilk
lapply(indicadores_VF, shapiro.test)
## $Pob2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.27635, p-value < 2.2e-16
## 
## 
## $IDE
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98075, p-value = 3.421e-15
## 
## 
## $IDH2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.97551, p-value < 2.2e-16
## 
## 
## $log_PBI
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.95614, p-value < 2.2e-16
## 
## 
## $log_POB2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98036, p-value = 2.286e-15
## 
## 
## $log_PEAO
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.96973, p-value < 2.2e-16
## 
## 
## $log_CIIU
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.96887, p-value < 2.2e-16
# Histogramas multiples
indicadores_VF %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(x = value)) +

  geom_histogram(
    bins = 15,
    fill = "#F527E0",
    alpha = 0.3,
    color = "#180116",
    linewidth = 0.2
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "Distribución de indicadores",
    x = "Valor",
    y = "Frecuencia"
  )

# QQ plots multiples
indicadores_VF %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(sample = value)) +

  stat_qq(
    color = "#F527E0",
    alpha = 0.3,
    size = 2
  ) +

  stat_qq_line(
    color = "#180116",
    linewidth = 0.5
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "QQ Plots de indicadores"
  )

1.4 Correlaciones

Los resultados muestran una fuerte asociación entre el PBI distrital, el tamaño poblacional y la cantidad de actividades económicas registradas. Las correlaciones más elevadas se observan entre el logaritmo del PBI y la PEAO (rho = 0.925), la población distrital ajustada logarítmicamente (rho = 0.918) y la cantidad de actividades económicas registradas (rho = 0.901), evidenciando un marcado efecto de escala económica y densidad funcional. En términos territoriales, ello sugiere que la mayor productividad tiende a concentrarse en distritos con mayores niveles de ocupación laboral, concentración poblacional y diversificación económica, configurándose mercados laborales más dinámicos y estructuras económicas más densas dentro del sistema territorial. En ese sentido, los resultados respaldan la pertinencia del PBI distrital como indicador económico, en tanto mantiene una elevada coherencia con variables estructurales consolidadas en el análisis territorial, pero con la ventaja de representar de manera más directa la magnitud de la productividad económica de los territorios.

En contraste, las correlaciones entre el PBI y los indicadores de desarrollo territorial y humano presentan valores moderados, tanto para el IDE (rho = 0.504) como para el IDH (rho = 0.409). Esto evidencia que el incremento de la productividad económica no se traduce automáticamente en mayores niveles de bienestar o desarrollo territorial. Lejos de constituir una limitación, esta diferenciación refuerza la utilidad analítica del indicador, ya que permite evidenciar que la productividad económica y las condiciones de desarrollo territorial asociadas al acceso a servicios, capacidades estatales y bienestar representan dimensiones distintas, aunque complementarias, dentro del análisis de jerarquía territorial. De este modo, el PBI aporta una aproximación específica a la capacidad productiva y funcional de los territorios, mientras que el IDE y el IDH permiten incorporar dimensiones vinculadas al acceso a servicios, condiciones de vida y desarrollo humano.

# Correlación Spearman
cor_mat <- indicadores_VF %>%
  select(log_PBI, everything()) %>%
  cor(method = "spearman", use = "pairwise.complete.obs")

cor_mat_subset <- cor_mat[c("log_PBI"), ]
round(cor_mat_subset, 3)
##     log_PBI     Pob2017         IDE     IDH2017 log_POB2017    log_PEAO 
##       1.000       0.918       0.504       0.409       0.918       0.925 
##    log_CIIU 
##       0.901
# visualizacion correlaciones PIB vs indicadores

graficar_indicador <- function(variable, titulo) {

  ggplot(indicadores_VF,
         aes_string(
           x = "log_PBI",
           y = variable
         )) +

    geom_point(
      aes(size = Pob2017),
      alpha = 0.30,
      color = "#F527E0"
    ) +

    geom_smooth(
      method = "lm",
      formula = y ~ x,
      se = TRUE,
      color = "#180116",
      linewidth = 0.5
    ) +

    scale_size_continuous(range = c(0.5, 10)) +

    theme_minimal() +

    labs(
      title = titulo,
      x = "Log PBI",
      y = variable,
      size = "Pob2017"
    )
}

graficar_indicador("IDE", "Relación entre PBI e IDE")
## Warning: `aes_string()` was deprecated in ggplot2 3.0.0.
## ℹ Please use tidy evaluation idioms with `aes()`.
## ℹ See also `vignette("ggplot2-in-packages")` for more information.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.

graficar_indicador("IDH2017", "Relación entre PBI e IDH")

graficar_indicador("log_PEAO", "Relación entre PBI y PEAO")

graficar_indicador("log_CIIU", "Relación entre PBI y concentración de actividades económicas")

1.5 Multicolinealidad

La evaluación de multicolinealidad evidencia una elevada asociación estructural entre la población distrital (27.35) y la PEAO (24.99), estos resultados indican que las variables demográficas y laborales forman parte de una misma estructura funcional territorial, manteniendo una relación estrecha con la dinámica económica distrital. En ese sentido, la fuerte asociación observada no constituye una limitación para la incorporación del PBI dentro del análisis de jerarquía territorial, sino que confirma su capacidad para capturar adecuadamente dimensiones vinculadas a la concentración de fuerza laboral. Sin embargo, a diferencia de la PEAO, el PBI incorpora además diferencias asociadas a productividad económica y capacidad de generación de valor, permitiendo distinguir territorios con niveles similares de población ocupada, pero con dinámicas económicas significativamente distintas. En consecuencia, el PBI distrital representa un indicador económico más integral para el análisis territorial, al combinar componentes demográficos, funcionales y productivos dentro de una misma medida de dinamismo económico.

# Modelo lineal

modelo <- lm(log_PBI ~ log_POB2017 + log_PEAO + log_CIIU,
             data = indicadores_VF)

summary(modelo)
## 
## Call:
## lm(formula = log_PBI ~ log_POB2017 + log_PEAO + log_CIIU, data = indicadores_VF)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.14565 -0.34382 -0.02505  0.34696  2.10560 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  3.48514    0.09184  37.947  < 2e-16 ***
## log_POB2017  0.21216    0.04041   5.250 1.70e-07 ***
## log_PEAO     0.63570    0.03749  16.954  < 2e-16 ***
## log_CIIU     0.15227    0.02370   6.425 1.67e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.4836 on 1870 degrees of freedom
## Multiple R-squared:  0.9002, Adjusted R-squared:  0.9001 
## F-statistic:  5625 on 3 and 1870 DF,  p-value: < 2.2e-16
# Función VIF
vif_manual <- function(modelo) {
  
  variables <- names(coef(modelo))[-1]
  
  vif_valores <- sapply(variables, function(var) {
    
    formula_aux <- as.formula(
      paste(var,
            "~",
            paste(setdiff(variables, var),
                  collapse = " + "))
    )
    
    modelo_aux <- lm(formula_aux,
                     data = modelo$model)
    
    r2 <- summary(modelo_aux)$r.squared
    
    1 / (1 - r2)
  })
  
  return(vif_valores)
}

# Calcular VIF

vif_manual(modelo)
## log_POB2017    log_PEAO    log_CIIU 
##   27.350973   24.992660    8.873606
# VIF < 5      -> baja multicolinealidad
# VIF 5 - 10   -> moderada
# VIF > 10     -> alta

# Tolerance

1 / vif_manual(modelo)
## log_POB2017    log_PEAO    log_CIIU 
##  0.03656177  0.04001175  0.11269375
# Tolerance > 0.2 -> aceptable
# Tolerance < 0.1 -> problemática

1.6 Interpretación territorial

La concentración de puntos alrededor de la línea de tendencia muestra que el incremento del tamaño económico se encuentra estrechamente asociado con una mayor concentración de actividades económicas registradas (ρ = 0.901). A nivel de región natural, la Costa lidera esta relación con una estructura productiva densa y diversificada, mientras que la Sierra, pese a concentrar la mayor cantidad de distritos, presenta actividad económica registrada limitada. La Selva Alta y Selva Baja muestran comportamientos heterogéneos. La visualización permite además identificar que los distritos con mayores niveles de concentración económica corresponden principalmente a grandes áreas urbanas y nodos comerciales del país: en Lima Metropolitana destacan distritos como San Juan de Lurigancho y San Martín de Porres, caracterizados por elevada aglomeración poblacional y fuerte concentración de actividades económicas; de manera similar sobresalen territorios como Juliaca, Cajamarca y Tambopata, indicando una incidencia entre actividades productivas y sus servicios asociados. En conjunto, estos casos refuerzan la idea de que el PBI distrital captura adecuadamente dinámicas de concentración económca funcional dentro del sistema territorial nacional.

Sin embargo, el gráfico entre PBI e IDH presenta una relación positiva moderada y una dispersión considerable entre distritos (ρ = 0.409), lo que indica que el tamaño económico explica solo parcialmente el bienestar de la población. Por región natural, la Costa es la que mejor convierte su PBI en bienestar humano, alcanzando los IDH más elevados; sin embargo, incluso dentro de ella se observan contrastes significativos: distritos como San Juan de Lurigancho y San Martín de Porres, que concentraban elevados niveles de población y actividad económica, registran IDH inferiores a distritos como Jesús María o Miraflores, que con menor concentración poblacional relativa alcanzan mejores indicadores de bienestar. La Sierra, por su parte, concentra la mayor proporción de distritos con IDH reducidos —por debajo de 0.4— incluso ante niveles de PBI medios, evidenciando la desconexión más marcada entre producción económica y calidad de vida. La Selva Alta y Selva Baja presentan IDH moderados y bajos con alta dispersión, patrón que se refleja en territorios como Tambopata, que muestra dinamismo económico pero IDH moderado, sugiriendo la existencia de bolsones de exclusión donde el crecimiento no alcanza a traducirse en desarrollo humano efectivo. Estos resultados refuerzan la interpretación de que el crecimiento económico y la productividad territorial no se traducen automáticamente en mayores niveles de bienestar, evidenciando brechas estructurales en acceso a servicios, calidad urbana y distribución de los beneficios del crecimiento dentro de la realidad territorial peruana.

# correlación Spearman
cor_test <- cor.test(
  indicadores_log$log_PBI,
  indicadores_log$log_CIIU,
  method = "spearman",
  exact = FALSE
)

rho <- round(cor_test$estimate, 5)

g <- ggplot(
  indicadores_log,
  aes(
    x = log_PBI,
    y = log_CIIU,
    color = regn_nt,
    text = paste(
      "Distrito:", nombdst,
      "<br>PBI:", round(PBI_dist, 0),
      "<br>Actividades:", T_Act,
      "<br>Población:", Pob2017
    )
  )
) +

geom_point(
  aes(size = Pob2017),
  alpha = 0.50
) +

geom_smooth(
  method = "lm",
  formula = y ~ x,
  se = TRUE,
  color = "#180116",
  linewidth = 0.8
) +

scale_color_manual(
  values = c(
    "COSTA" = "#02DBC7",        
    "SIERRA" = "#DB8F02",       
    "SELVA ALTA" = "#364F1A",   
    "SELVA BAJA" = "#BADB02"     
  )
) +

scale_size_continuous(range = c(0.5, 10)) +

theme_minimal() +

labs(
  title = "Relación entre PBI y actividades económicas",
  x = "Log PBI",
  y = "Log actividades económicas",
  color = "Región natural"
)

ggplotly(g, tooltip = "text")
cor_test <- cor.test(
  indicadores_log$log_PBI,
  indicadores_log$IDH2017,
  method = "spearman",
  exact = FALSE
)

rho <- round(cor_test$estimate, 5)

g <- ggplot(
  indicadores_log,
  aes(
    x = log_PBI,
    y = IDH2017,
    color = regn_nt,
    text = paste(
      "Distrito:", nombdst,
      "<br>PBI:", round(PBI_dist, 0),
      "<br>IDH:", IDH2017,
      "<br>Población:", Pob2017
    )
  )
) +

geom_point(
  aes(size = Pob2017),
  alpha = 0.50
) +

geom_smooth(
  method = "lm",
  formula = y ~ x,
  se = TRUE,
  color = "#180116",
  linewidth = 0.8
) +

scale_color_manual(
  values = c(
    "COSTA" = "#02DBC7",        
    "SIERRA" = "#DB8F02",       
    "SELVA ALTA" = "#364F1A",   
    "SELVA BAJA" = "#BADB02"    
  )
) +

scale_size_continuous(range = c(0.5, 10)) +

theme_minimal() +

labs(
  title = "Relación entre PBI e IDH",
  x = "Log PBI",
  y = "IDH2017",
  color = "Región natural"
)

ggplotly(g, tooltip = "text")

2 Anexos

Se incluyen como anexo el análisis de relaciones territoriales entre el indicador de tamaño económico y los indicadores que componene los indices compuestos de IDH e IDE.

2.1 Análisis de indicadores IDH

El indice de desarrollo humano se compone de los indicadores: 1)esperanza de vida al nacer, 2) ingresos per cápita y 3) nivel educativo.

2.1.1 Normalidad IDH

# Estadísticas descriptivas
describe(indicadores_IDH)
# Prueba de normalidad Shapiro-Wilk
lapply(indicadores_IDH, shapiro.test)
## $IDH2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.97551, p-value < 2.2e-16
## 
## 
## $espvida201
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.97568, p-value < 2.2e-16
## 
## 
## $X18sec2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98352, p-value = 7.165e-14
## 
## 
## $educ2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.97104, p-value < 2.2e-16
## 
## 
## $log_PBI
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.95614, p-value < 2.2e-16
## 
## 
## $log_POB2017
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98036, p-value = 2.286e-15
## 
## 
## $log_ingpc
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.9865, p-value = 2.835e-12
# Histogramas multiples
indicadores_IDH %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(x = value)) +

  geom_histogram(
    bins = 15,
    fill = "#F527E0",
    alpha = 0.3,
    color = "#180116",
    linewidth = 0.2
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "Distribución de indicadores IDH",
    x = "Valor",
    y = "Frecuencia"
  )

# QQ plots multiples
indicadores_IDH %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(sample = value)) +

  stat_qq(
    color = "#F527E0",
    alpha = 0.3,
    size = 2
  ) +

  stat_qq_line(
    color = "#180116",
    linewidth = 0.5
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "QQ Plots de indicadores IDH"
  )

### Correlaciones IDH

# Correlación Spearman
cor_mat <- indicadores_IDH %>%
    cor(
    method = "spearman",
    use = "complete.obs"
  )

round(cor_mat, 3)
##             IDH2017 espvida201 X18sec2017 educ2017 log_PBI log_POB2017
## IDH2017       1.000      0.394      0.640    0.869   0.409       0.257
## espvida201    0.394      1.000      0.121    0.160   0.197       0.123
## X18sec2017    0.640      0.121      1.000    0.680   0.345       0.227
## educ2017      0.869      0.160      0.680    1.000   0.328       0.194
## log_PBI       0.409      0.197      0.345    0.328   1.000       0.918
## log_POB2017   0.257      0.123      0.227    0.194   0.918       1.000
## log_ingpc     0.957      0.291      0.490    0.786   0.395       0.255
##             log_ingpc
## IDH2017         0.957
## espvida201      0.291
## X18sec2017      0.490
## educ2017        0.786
## log_PBI         0.395
## log_POB2017     0.255
## log_ingpc       1.000
# visualizacion correlaciones PIB vs indicadores
indicadores_IDH %>%
  pivot_longer(cols = -log_PBI) %>%
  
  ggplot(aes(x = log_PBI, y = value)) +
  
  geom_point(alpha = 0.25, color = "#F527E0", size = 0.7) +
  
  geom_smooth(method = "lm", se = TRUE, color = "#180116", linewidth = 0.5) +
  
  facet_wrap(~name, scales = "free", ncol = 4) +
  
  theme_minimal() +
  
  theme(
    strip.text = element_text(size = 7),
    axis.text = element_text(size = 6),
    axis.title = element_text(size = 8)
  ) +
  
  labs(
    title = "Relación entre PBI e Indicadores IDH",
    x = "Log PBI",
    y = "Valor del indicador"
  )

2.2 Análisis de indicadores IDE

El índice de densidad de estado se compone de cuatro dimensiones, cada una con indicadores epcíficos: 1) Acceso a servicios básicos, 2) Acceso a servicios de salud y educación, 3) Acceso a servicios de seguridad y 4) Conectividad territorial.

2.2.1 Normalidad IDE

# Estadísticas descriptivas
describe(indicadores_IDE)
# Prueba de normalidad Shapiro-Wilk
lapply(indicadores_IDE, shapiro.test)
## $IDE
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98075, p-value = 3.421e-15
## 
## 
## $acc_agua
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.92352, p-value < 2.2e-16
## 
## 
## $acc_luz
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.92309, p-value < 2.2e-16
## 
## 
## $I_edu
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.96652, p-value < 2.2e-16
## 
## 
## $I_salud
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.93032, p-value < 2.2e-16
## 
## 
## $I_segur
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.94838, p-value < 2.2e-16
## 
## 
## $I_conect
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.83573, p-value < 2.2e-16
## 
## 
## $X12_16_sec
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.97904, p-value = 6.042e-16
## 
## 
## $pob_60_sec
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.64315, p-value < 2.2e-16
## 
## 
## $pob_60_sal
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.72936, p-value < 2.2e-16
## 
## 
## $pob_60_com
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.71954, p-value < 2.2e-16
## 
## 
## $pob_60_ciu
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.64116, p-value < 2.2e-16
## 
## 
## $Acc_conect
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.84235, p-value < 2.2e-16
## 
## 
## $med_10M
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.26404, p-value < 2.2e-16
## 
## 
## $polic_100M
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.57052, p-value < 2.2e-16
## 
## 
## $log_PBI
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.95614, p-value < 2.2e-16
## 
## 
## $log_POB2024
## 
##  Shapiro-Wilk normality test
## 
## data:  X[[i]]
## W = 0.98207, p-value = 1.397e-14
# Histogramas multiples
indicadores_IDE %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(x = value)) +

  geom_histogram(
    bins = 15,
    fill = "#F527E0",
    alpha = 0.3,
    color = "#180116",
    linewidth = 0.2
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "Distribución de indicadores IDE",
    x = "Valor",
    y = "Frecuencia"
  )

# QQ plots multiples
indicadores_IDE %>%
  pivot_longer(cols = everything()) %>%
  ggplot(aes(sample = value)) +

  stat_qq(
    color = "#F527E0",
    alpha = 0.3,
    size = 2
  ) +

  stat_qq_line(
    color = "#180116",
    linewidth = 0.5
  ) +

  facet_wrap(~name, scales = "free") +

  theme_minimal() +

  labs(
    title = "QQ Plots de indicadores IDE"
  )

2.2.2 Correlaciones IDE

cor_pbi <- indicadores_IDE %>%
  select(log_PBI, IDE, everything()) %>%
  cor(method = "spearman", use = "pairwise.complete.obs")

cor_pbi_subset <- cor_pbi[c("log_PBI", "IDE"), ]
round(cor_pbi_subset, 3)
##         log_PBI   IDE acc_agua acc_luz I_edu I_salud I_segur I_conect
## log_PBI   1.000 0.504    0.281   0.280 0.267   0.433   0.372    0.591
## IDE       0.504 1.000    0.716   0.731 0.733   0.794   0.728    0.842
##         X12_16_sec pob_60_sec pob_60_sal pob_60_com pob_60_ciu Acc_conect
## log_PBI      0.218      0.251      0.502      0.320      0.499      0.581
## IDE          0.619      0.705      0.790      0.834      0.684      0.791
##         med_10M polic_100M log_POB2024
## log_PBI   0.041      0.365       0.919
## IDE       0.145      0.477       0.457
# visualizacion correlaciones PIB vs indicadores IDE
indicadores_IDE %>%
  pivot_longer(cols = -log_PBI) %>%
  
  ggplot(aes(x = log_PBI, y = value)) +
  
  geom_point(alpha = 0.25, color = "#F527E0", size = 0.7) +
  
  geom_smooth(method = "lm", se = TRUE, color = "#180116", linewidth = 0.5) +
  
  facet_wrap(~name, scales = "free", ncol = 4) +
  
  theme_minimal() +
  
  theme(
    strip.text = element_text(size = 7),
    axis.text = element_text(size = 6),
    axis.title = element_text(size = 8)
  ) +
  
  labs(
    title = "Relación entre PBI e Indicadores IDE",
    x = "Log PBI",
    y = "Valor del indicador"
  )