1 1. Introducción

Este reporte presenta un Análisis Exploratorio de Datos Espaciales, ESDA, aplicado a las exportaciones a nivel estatal en México. La variable principal de interés es real_exports, complementada con variables socioeconómicas y territoriales que pueden ayudar a explicar el desempeño exportador.

El objetivo es identificar disparidades regionales, patrones de concentración y dependencia espacial entre los estados. El análisis incluye estadísticas descriptivas, medidas de dispersión, histogramas, boxplots, mapas coropléticos, una matriz de pesos espaciales y el estadístico Global Moran’s I.

2 2. Preguntas conceptuales

2.1 ¿Qué es ESDA?

El Análisis Exploratorio de Datos Espaciales, ESDA, extiende el análisis exploratorio tradicional al incorporar la dimensión geográfica. Mientras que el EDA se enfoca en distribuciones, tendencia central, dispersión y valores atípicos, el ESDA permite además identificar patrones espaciales como agrupamientos, dispersión territorial y posibles dependencias entre regiones vecinas.

2.2 ¿Qué es la autocorrelación espacial?

La autocorrelación espacial mide el grado en que unidades geográficas cercanas presentan valores similares o distintos. Es relevante porque la actividad económica no suele ser independiente entre regiones, ya que los estados vecinos comparten infraestructura, mercados laborales, cadenas productivas y otras condiciones estructurales.

2.3 Diferencia entre autocorrelación espacial global y local

La autocorrelación global resume el patrón espacial de toda la base de datos en una sola medida. En contraste, la autocorrelación local identifica clusters o valores atípicos espaciales en ubicaciones específicas. En otras palabras, la medida global muestra si existe un patrón general, mientras que la medida local permite ubicar dónde ocurre.

2.4 ¿Cómo mejora el ESDA los análisis descriptivos, predictivos y prescriptivos?

El ESDA mejora el análisis descriptivo al hacer visibles las diferencias territoriales, fortalece los modelos predictivos al sugerir relaciones espaciales que deben incorporarse explícitamente y aporta valor al análisis prescriptivo al facilitar decisiones focalizadas según clusters, disparidades regionales y posibles spillovers territoriales.

3 3. Importación y preparación de datos

analysis_year <- 2022

exports <- read_excel("inegi_mx_state_exports.xlsx", sheet = "exports") %>%
  clean_names()

data <- read_excel("inegi_mx_state_exports.xlsx", sheet = "data") %>%
  clean_names()

mx_state_map <- st_read("/Users/carosuarez/Downloads/mx_maps/mx_states/mexlatlong.shp", quiet = TRUE)
exports_selected <- exports %>%
  select(state, region, real_exports_2022) %>%
  rename(real_exports = real_exports_2022)

data_selected <- data %>%
  filter(year == analysis_year) %>%
  select(
    state,
    region,
    pop_density,
    gdp_per_capita_2018,
    lq_secondary,
    border_economic_activity,
    crime_rate
  ) %>%
  distinct()

analysis_data <- exports_selected %>%
  left_join(data_selected, by = c("state", "region"))

3.1 Variables seleccionadas

La variable principal del análisis es real_exports, correspondiente a las exportaciones reales por estado en 2022. Como variables explicativas se seleccionaron indicadores relacionados con densidad poblacional, ingreso, especialización productiva, actividad económica fronteriza y crimen, ya que pueden influir en la capacidad exportadora de cada entidad.

variables_table <- data.frame(
  Variable = c(
    "real_exports",
    "gdp_per_capita_2018",
    "pop_density",
    "lq_secondary",
    "border_economic_activity",
    "crime_rate"
  ),
  Rol_analitico = c(
    "Variable principal de interés",
    "Desarrollo económico",
    "Efectos de aglomeración",
    "Especialización industrial",
    "Acceso geográfico a mercados",
    "Riesgo territorial"
  )
)

kable(
  variables_table,
  caption = "Variables seleccionadas y su rol analítico"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Variables seleccionadas y su rol analítico
Variable Rol_analitico
real_exports Variable principal de interés
gdp_per_capita_2018 Desarrollo económico
pop_density Efectos de aglomeración
lq_secondary Especialización industrial
border_economic_activity Acceso geográfico a mercados
crime_rate Riesgo territorial

3.2 Preparación espacial

normalize_state_names <- function(x) {
  x %>%
    str_to_upper() %>%
    str_trim() %>%
    str_replace_all("Á", "A") %>%
    str_replace_all("É", "E") %>%
    str_replace_all("Í", "I") %>%
    str_replace_all("Ó", "O") %>%
    str_replace_all("Ú", "U")
}

analysis_data <- analysis_data %>%
  mutate(state_join = normalize_state_names(state))

mx_state_map <- mx_state_map %>%
  mutate(state_join = normalize_state_names(ADMIN_NAME))

spatial_data <- mx_state_map %>%
  left_join(analysis_data, by = "state_join")
validation_table <- data.frame(
  Metrica = c(
    "Filas en hoja exports",
    "Filas en hoja data filtrada",
    "Filas en base analítica",
    "Filas en base espacial final",
    "Estados sin match en exportaciones"
  ),
  Valor = c(
    nrow(exports_selected),
    nrow(data_selected),
    nrow(analysis_data),
    nrow(spatial_data),
    sum(is.na(spatial_data$real_exports))
  )
)

kable(
  validation_table,
  caption = "Validación de la integración espacial"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Validación de la integración espacial
Metrica Valor
Filas en hoja exports 32
Filas en hoja data filtrada 32
Filas en base analítica 32
Filas en base espacial final 32
Estados sin match en exportaciones 1

La integración espacial se realizó homologando los nombres de los estados entre la base tabular y el shapefile. Esta validación es importante porque permite confirmar que la unión fue exitosa antes de construir mapas, vecinos y medidas de autocorrelación espacial. Además, el hecho de que exista un estado sin correspondencia sugiere que pequeñas inconsistencias en los nombres pueden persistir incluso después de la normalización, lo cual es relevante porque estos casos pueden introducir sesgos o pérdida de información en el análisis espacial si no se identifican y tratan explícitamente.

4 4. Estadísticas descriptivas por región

selected_vars <- c(
  "real_exports",
  "gdp_per_capita_2018",
  "pop_density",
  "lq_secondary",
  "border_economic_activity",
  "crime_rate"
)

descriptive_stats <- analysis_data %>%
  group_by(region) %>%
  summarise(
    across(
      all_of(selected_vars),
      list(
        mean = ~mean(.x, na.rm = TRUE),
        median = ~median(.x, na.rm = TRUE),
        min = ~min(.x, na.rm = TRUE),
        max = ~max(.x, na.rm = TRUE)
      ),
      .names = "{.col}_{.fn}"
    )
  )

kable(
  descriptive_stats,
  caption = "Estadísticas descriptivas por región"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Estadísticas descriptivas por región
region real_exports_mean real_exports_median real_exports_min real_exports_max gdp_per_capita_2018_mean gdp_per_capita_2018_median gdp_per_capita_2018_min gdp_per_capita_2018_max pop_density_mean pop_density_median pop_density_min pop_density_max lq_secondary_mean lq_secondary_median lq_secondary_min lq_secondary_max border_economic_activity_mean border_economic_activity_median border_economic_activity_min border_economic_activity_max crime_rate_mean crime_rate_median crime_rate_min crime_rate_max
CdMx 53147598 53147598 53147598 53147598 3920.515 3920.515 3920.5152 3920.515 6230.92334 6230.92334 6230.92334 6230.92334 0.5634425 0.5634425 0.5634425 0.5634425 -1.9783682 -1.978368 -1.978368 -1.9783682 7.96910 7.96910 7.969100 7.96910
Centro_Sur_Oriente 148230033 95440001 33105907 319121609 1250.400 1277.590 1045.2159 1353.269 332.70023 272.70202 113.47548 777.40301 0.9735682 0.9571735 0.5705539 1.6989745 -1.9736626 -1.986863 -2.082189 -1.8166366 21.10520 14.10295 9.300382 59.24236
Noreste 631749722 653135534 273330408 947397411 2504.302 2469.999 1867.8184 3209.392 51.67135 45.69169 21.63346 93.66857 1.3435605 1.2892904 1.1665560 1.6291052 -1.1763678 -1.150908 -1.667185 -0.7364709 16.79415 18.00023 4.848270 26.32788
Noroeste 409274781 210389805 6598584 1163116947 2139.720 2253.714 1594.1693 2633.286 27.57583 16.10593 11.32192 53.49869 1.1899882 1.2528681 0.5157059 1.8605077 -0.9155327 -1.522561 -2.069811 2.4976566 37.49191 37.45813 6.419585 75.87339
Occidente_Bajio 193328819 146806516 4463690 490348341 1790.710 1853.244 1302.8220 2393.329 134.33805 122.59160 21.72366 262.30298 0.9422705 0.9478406 0.5878345 1.4199548 -1.9587719 -1.912722 -2.286914 -1.7322089 45.55110 34.02637 5.634732 111.06382
Sur 78741131 20967017 1008476 296052336 1930.788 1558.002 659.4383 5023.466 56.90581 56.44861 16.36854 99.76362 0.8012830 0.7511195 0.3826280 1.1151508 -2.2773065 -2.262951 -2.536673 -1.9591717 17.88571 14.18585 1.984215 38.55262

Las estadísticas descriptivas muestran que el desempeño exportador y sus posibles determinantes varían de forma importante entre regiones. Algunas concentran mayores niveles de exportaciones y mejores condiciones estructurales, mientras que otras presentan niveles más bajos y menor capacidad económica relativa.

Desde una perspectiva analítica, esto sugiere que México no presenta una estructura exportadora homogénea, sino una distribución territorial desigual en la que ciertas regiones concentran una parte desproporcionada del dinamismo económico.

5 5. Estadísticas de dispersión por región

dispersion_stats <- analysis_data %>%
  group_by(region) %>%
  summarise(
    across(
      all_of(selected_vars),
      ~sd(.x, na.rm = TRUE),
      .names = "{.col}_sd"
    )
  )

kable(
  dispersion_stats,
  caption = "Desviación estándar por región"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Desviación estándar por región
region real_exports_sd gdp_per_capita_2018_sd pop_density_sd lq_secondary_sd border_economic_activity_sd crime_rate_sd
CdMx NA NA NA NA NA NA
Centro_Sur_Oriente 131190071 107.6157 246.19832 0.4085250 0.0930958 18.991657
Noreste 297334226 632.1664 30.21818 0.2109758 0.4004509 9.936343
Noroeste 480581192 421.1352 20.02502 0.5000559 1.7403957 29.375307
Occidente_Bajio 183335303 418.2858 85.48616 0.3281476 0.1687095 39.910159
Sur 112467854 1516.0561 26.57571 0.2524763 0.1921249 13.394832

Los resultados de dispersión indican que no todas las regiones son homogéneas internamente. Desviaciones estándar altas sugieren que dentro de una misma región existen estados con desempeños muy distintos, especialmente en exportaciones y desarrollo económico.

Esto es importante porque revela que agrupar estados por región no elimina la heterogeneidad. Por el contrario, muestra que siguen existiendo contrastes relevantes al interior de cada bloque regional, lo que refuerza la necesidad de complementar el análisis con herramientas espaciales. Adicionalmente, una alta dispersión puede estar impulsada por la presencia de uno o pocos estados con valores extremos dentro de la región, lo que implica que el comportamiento promedio regional podría no representar adecuadamente a todos los estados que la componen.

6 6. Análisis de distribución

6.1 Histogramas

plot_hist <- function(data, var, title, xlab = NULL) {
  ggplot(data, aes(x = .data[[var]])) +
    geom_histogram(bins = 12, fill = "steelblue", color = "white") +
    labs(
      title = title,
      x = ifelse(is.null(xlab), var, xlab),
      y = "Frecuencia"
    ) +
    theme_minimal() +
    theme(
      plot.title = element_text(hjust = 0.5, face = "bold", size = 10)
    )
}
p1 <- plot_hist(
  analysis_data,
  "real_exports",
  "Exportaciones reales",
  "Exportaciones reales"
)

p2 <- plot_hist(
  analysis_data,
  "gdp_per_capita_2018",
  "PIB per cápita",
  "PIB per cápita"
)

p3 <- plot_hist(
  analysis_data,
  "pop_density",
  "Densidad poblacional",
  "Densidad poblacional"
)

p4 <- plot_hist(
  analysis_data,
  "lq_secondary",
  "LQ sector secundario",
  "LQ sector secundario"
)

p5 <- plot_hist(
  analysis_data,
  "border_economic_activity",
  "Actividad económica fronteriza",
  "Actividad económica fronteriza"
)

p6 <- plot_hist(
  analysis_data,
  "crime_rate",
  "Tasa de crimen",
  "Tasa de crimen"
)

(p1 | p2 | p3) / (p4 | p5 | p6)

Los histogramas muestran que varias variables presentan sesgo hacia la derecha, especialmente las relacionadas con exportaciones, densidad económica y actividad fronteriza. Esto sugiere que unos pocos estados concentran valores muy altos respecto al resto del país, mientras que la mayoría permanece en niveles más bajos.

Desde una perspectiva analítica, este patrón es consistente con una estructura económica desigual, donde el dinamismo exportador y productivo se concentra en ciertos polos territoriales. Además, la presencia de asimetría y posibles valores extremos indica que algunas variables podrían beneficiarse de una transformación logarítmica para mejorar su interpretación visual. Esto también implica que algunas medidas resumen pueden estar influenciadas por valores extremos, por lo que es importante interpretar estos resultados con cautela.

6.2 Boxplots por región

selected_vars <- c(
  "real_exports",
  "gdp_per_capita_2018",
  "pop_density",
  "lq_secondary",
  "border_economic_activity",
  "crime_rate"
)

analysis_long <- analysis_data %>%
  pivot_longer(
    cols = all_of(selected_vars),
    names_to = "variable",
    values_to = "value"
  )
ggplot(analysis_long, aes(x = region, y = value, fill = region)) +
  geom_boxplot() +
  facet_wrap(~variable, scales = "free_y", nrow = 1) +
  theme_minimal() +
  theme(
    legend.position = "none",
    strip.text = element_text(size = 8, face = "bold"),
    plot.title = element_text(hjust = 0.5, face = "bold")
  ) +
  labs(
    title = "Boxplots de variables seleccionadas por región",
    x = "Región",
    y = "Valor"
  )

Los boxplots muestran una dispersión considerable entre regiones y evidencian la presencia de valores atípicos en varias variables. En particular, las exportaciones y algunos indicadores estructurales parecen estar influenciados por un grupo reducido de estados con desempeño sobresaliente.

Esto puede defenderse diciendo que la estructura exportadora mexicana no solo es desigual, sino que además está fuertemente condicionada por casos extremos que elevan la escala nacional. Por eso, los boxplots ayudan a visualizar tanto la dispersión regional como la existencia de estados que se apartan claramente del comportamiento general. También se observa que este patrón no es igual para todas las variables, lo que sugiere que la heterogeneidad regional depende del tipo de indicador analizado y no responde a una sola dinámica común.

6.3 Histogramas con transformación logarítmica

analysis_log <- analysis_data %>%
  mutate(
    log_real_exports = log1p(real_exports),
    log_gdp = log1p(gdp_per_capita_2018),
    log_density = log1p(pop_density)
  )
p_log1 <- plot_hist(
  analysis_log,
  "log_real_exports",
  "Log de exportaciones reales",
  "log(1 + exportaciones)"
)

p_log2 <- plot_hist(
  analysis_log,
  "log_gdp",
  "Log de PIB per cápita",
  "log(1 + PIB per cápita)"
)

p_log3 <- plot_hist(
  analysis_log,
  "log_density",
  "Log de densidad poblacional",
  "log(1 + densidad)"
)

p_log1 | p_log2 | p_log3

La transformación logarítmica reduce la asimetría de las variables originalmente sesgadas y permite observar con mayor claridad su distribución subyacente. En este caso, las variables transformadas se ven menos dominadas por valores extremos, lo que facilita comparaciones más equilibradas entre estados.

Metodológicamente, esta transformación es defendible porque no altera la lógica económica de las variables, pero sí mejora su legibilidad estadística y visual. Por ello, resulta útil como apoyo para interpretar distribuciones muy concentradas y para preparar futuras etapas de modelación. También permite distinguir con mayor claridad las diferencias entre estados con valores intermedios, que en la escala original podían quedar ocultas por el peso de los casos extremos.

6.4 Conclusión del análisis de distribución

En conjunto, el análisis de distribución muestra que las exportaciones y varios de sus posibles determinantes no siguen una estructura homogénea entre estados. Por el contrario, presentan asimetría, dispersión y valores extremos que reflejan una economía territorialmente desigual.

La combinación de histogramas, boxplots y transformaciones logarítmicas permite entender mejor tanto la magnitud de las diferencias como la forma en que estas se distribuyen. Esto fortalece la lectura del ESDA, ya que prepara el camino para interpretar de manera más sólida los patrones espaciales observados en los mapas y en las pruebas de autocorrelación. Además, estos resultados sugieren que las diferencias observadas podrían no ser aleatorias en el territorio, lo que justifica analizar si existe algún tipo de agrupamiento espacial en las siguientes secciones.

7 7. Mapas coropléticos

tmap_mode("plot")

7.1 Mapa de exportaciones reales

tm_shape(spatial_data) +
  tm_polygons(
    "real_exports",
    palette = "Blues",
    style = "quantile",
    n = 8,
    title = "Exportaciones reales"
  ) +
  tm_layout(
    main.title = "Exportaciones reales por estado",
    main.title.position = "center",
    main.title.size = 1.2,
    legend.outside = TRUE,
    frame = FALSE
  )

El mapa coroplético muestra que las exportaciones reales no se distribuyen de manera homogénea entre los estados del país. Algunas entidades concentran niveles mucho más altos de exportación, lo que sugiere la presencia de desigualdades territoriales y patrones de concentración regional.

Desde una lógica estratégica, esto implica que el desempeño exportador no depende únicamente de atributos individuales del estado, sino también de su posición dentro de corredores económicos, polos industriales y redes logísticas.

7.2 Mapa de PIB per cápita

tm_shape(spatial_data) +
  tm_polygons(
    "gdp_per_capita_2018",
    palette = "Greens",
    style = "quantile",
    n = 8,
    title = "PIB per cápita"
  ) +
  tm_layout(
    main.title = "PIB per cápita por estado",
    main.title.position = "center",
    main.title.size = 1.2,
    legend.outside = TRUE,
    frame = FALSE
  )

Este mapa permite evaluar si los estados con mayor ingreso presentan también una concentración territorial visible y si ese patrón coincide con un mejor desempeño exportador.

Si los estados con mayor PIB per cápita aparecen próximos o dentro de regiones similares a las de mayor exportación, eso refuerza la hipótesis de que el desarrollo económico y la competitividad externa están interrelacionados espacialmente.

7.3 Mapa de densidad poblacional

tm_shape(spatial_data) +
  tm_polygons(
    "pop_density",
    palette = "Purples",
    style = "quantile",
    n = 8,
    title = "Densidad poblacional"
  ) +
  tm_layout(
    main.title = "Densidad poblacional por estado",
    main.title.position = "center",
    main.title.size = 1.2,
    legend.outside = TRUE,
    frame = FALSE
  )

La distribución espacial de la densidad poblacional ayuda a identificar posibles efectos de aglomeración, especialmente si los estados más densos coinciden con mayores niveles de exportación.

Esto puede interpretarse como evidencia indirecta de que la concentración de población, infraestructura y actividad económica puede generar ventajas de escala relevantes para la capacidad exportadora.

7.4 Mapa de actividad económica fronteriza

tm_shape(spatial_data) +
  tm_polygons(
    "border_economic_activity",
    palette = "Oranges",
    style = "quantile",
    n = 8,
    title = "Actividad económica fronteriza"
  ) +
  tm_layout(
    main.title = "Actividad económica fronteriza por estado",
    main.title.position = "center",
    main.title.size = 1.2,
    legend.outside = TRUE,
    frame = FALSE
  )

Este mapa permite observar si el acceso geográfico a la frontera y la integración con mercados internacionales están asociados con una mayor concentración exportadora.

Su defensa es clara: la cercanía a la frontera puede facilitar comercio, logística y vinculación con cadenas globales, por lo que una concentración espacial en esta variable tendría sentido económico.

7.5 Mapa de especialización del sector secundario

tm_shape(spatial_data) +
  tm_polygons(
    "lq_secondary",
    palette = "Reds",
    style = "quantile",
    n = 8,
    title = "LQ sector secundario"
  ) +
  tm_layout(
    main.title = "Especialización del sector secundario por estado",
    main.title.position = "center",
    main.title.size = 1.2,
    legend.outside = TRUE,
    frame = FALSE
  )

La especialización del sector secundario puede ayudar a explicar diferencias en el desempeño exportador, especialmente si los estados con mayor capacidad manufacturera muestran una clara concentración espacial.

Esto fortalece la idea de que la base industrial no está uniformemente distribuida, y que ciertos estados cuentan con una estructura productiva mucho más alineada con actividades exportadoras.

8 8. Matriz de pesos espaciales

neighbors <- poly2nb(spatial_data, queen = TRUE)
weights <- nb2listw(neighbors, style = "W", zero.policy = TRUE)
neighbor_count <- data.frame(
  state = spatial_data$ADMIN_NAME,
  neighbors = card(neighbors)
)

kable(
  neighbor_count,
  caption = "Número de vecinos por estado bajo criterio Queen"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Número de vecinos por estado bajo criterio Queen
state neighbors
Chihuahua 4
Coahuila 5
Nuevo Leon 4
Tamaulipas 3
Sinaloa 4
Durango 5
Zacatecas 8
San Luis Potosi 9
Jalisco 7
Aguascalientes 2
Veracruz 7
Guanajuato 5
Queretaro 5
Yucatan 2
Quintana Roo 2
Hidalgo 6
Campeche 3
Puebla 7
Michoacan 6
Mexico 8
Tlaxcala 3
Colima 2
Distrito Federal 2
Morelos 4
Guerrero 5
Oaxaca 4
Tabasco 3
Chiapas 3
Sonora 3
Baja California 2
Baja California Sur 1
Nayarit 4

Los estados se consideran vecinos cuando comparten frontera o vértice bajo el criterio Queen. Esta matriz de pesos espaciales permite capturar la conectividad territorial y analizar si los valores observados en un estado pueden estar relacionados con el comportamiento de sus estados colindantes.

Su defensa metodológica es importante: esta matriz convierte la geografía en una estructura analítica, haciendo posible evaluar si la proximidad espacial influye en los resultados económicos observados.

9 9. Global Moran’s I

moran_vars <- c(
  "real_exports",
  "gdp_per_capita_2018",
  "pop_density",
  "lq_secondary",
  "border_economic_activity"
)

missing_table <- data.frame(
  variable = moran_vars,
  missing_values = sapply(moran_vars, function(v) sum(is.na(spatial_data[[v]])))
)

kable(
  missing_table,
  caption = "Valores faltantes por variable antes de calcular Moran's I"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Valores faltantes por variable antes de calcular Moran’s I
variable missing_values
real_exports real_exports 1
gdp_per_capita_2018 gdp_per_capita_2018 1
pop_density pop_density 1
lq_secondary lq_secondary 1
border_economic_activity border_economic_activity 1
calc_moran <- function(var_name, data_sf) {
  
  temp_data <- data_sf %>%
    filter(!is.na(.data[[var_name]]))
  
  temp_neighbors <- poly2nb(temp_data, queen = TRUE)
  temp_weights <- nb2listw(temp_neighbors, style = "W", zero.policy = TRUE)
  
  test <- moran.test(
    temp_data[[var_name]],
    temp_weights,
    zero.policy = TRUE
  )
  
  data.frame(
    variable = var_name,
    n_estados = nrow(temp_data),
    moran_I = unname(test$estimate[1]),
    expected_I = unname(test$estimate[2]),
    p_value = test$p.value
  )
}

moran_table <- lapply(moran_vars, calc_moran, data_sf = spatial_data) %>%
  bind_rows()

kable(
  moran_table,
  caption = "Resultados de Global Moran's I"
) %>%
  kable_styling(
    full_width = FALSE,
    bootstrap_options = c("striped", "hover", "condensed")
  )
Resultados de Global Moran’s I
variable n_estados moran_I expected_I p_value
real_exports 31 0.1086981 -0.0333333 0.1194671
gdp_per_capita_2018 31 0.2319538 -0.0333333 0.0097071
pop_density 31 0.3713247 -0.0333333 0.0000424
lq_secondary 31 0.1084173 -0.0333333 0.1290301
border_economic_activity 31 0.1744160 -0.0333333 0.0069022

El estadístico Global Moran’s I se calculó utilizando únicamente los estados con información disponible en cada variable. Esto permite evitar problemas derivados de valores faltantes y asegura una estimación válida de la autocorrelación espacial.

Los resultados de Global Moran’s I permiten evaluar si los patrones espaciales observados en los mapas corresponden a una estructura real o a una distribución aleatoria. Si los valores son positivos y estadísticamente significativos, puede concluirse que existe clustering espacial, es decir, que los estados con valores similares tienden a agruparse geográficamente.

En términos de defensa, esto implica que el desempeño exportador no se explica solo por características individuales de cada estado, sino también por su ubicación geográfica y sus vínculos con entidades vecinas. En otras palabras, México no funciona como un conjunto de estados aislados, sino como una red de clusters regionales interconectados.

9.1 Moran plot de exportaciones reales

spatial_real_exports <- spatial_data %>%
  filter(!is.na(real_exports))

neighbors_real_exports <- poly2nb(spatial_real_exports, queen = TRUE)
weights_real_exports <- nb2listw(neighbors_real_exports, style = "W", zero.policy = TRUE)

moran.plot(
  spatial_real_exports$real_exports,
  weights_real_exports,
  zero.policy = TRUE,
  main = "Moran Plot de exportaciones reales"
)

9.2 Moran plot de PIB per cápita

spatial_gdp <- spatial_data %>%
  filter(!is.na(gdp_per_capita_2018))

neighbors_gdp <- poly2nb(spatial_gdp, queen = TRUE)
weights_gdp <- nb2listw(neighbors_gdp, style = "W", zero.policy = TRUE)

moran.plot(
  spatial_gdp$gdp_per_capita_2018,
  weights_gdp,
  zero.policy = TRUE,
  main = "Moran Plot de PIB per cápita"
)

Los Moran plots complementan la prueba numérica al mostrar la relación entre el valor de cada estado y el promedio de sus vecinos. Esto permite visualizar si existen clusters de valores altos o bajos dentro del territorio.

Su lectura puede defenderse así: los cuadrantes del Moran Plot ayudan a distinguir agrupamientos alto, alto y bajo, bajo, así como posibles outliers espaciales. Esto vuelve más tangible la lógica de autocorrelación espacial y conecta la prueba estadística con una representación visual más intuitiva.

10 10. Hipótesis para futuros modelos espaciales

  1. Los estados con mayor PIB per cápita tienden a presentar mayores exportaciones reales.
  2. Los estados con mayor especialización del sector secundario tienden a exhibir un mejor desempeño exportador.
  3. La actividad económica fronteriza se asocia positivamente con las exportaciones.
  4. La densidad poblacional puede reflejar efectos de aglomeración que fortalecen la capacidad exportadora.
  5. El desempeño exportador de un estado puede estar influido parcialmente por el desempeño de sus estados vecinos.

Estas hipótesis sirven como base para futuros modelos predictivos y espaciales, ya que integran tanto factores estructurales como posibles efectos de proximidad geográfica.

Además, permiten defender que una estrategia de predicción o intervención sobre exportaciones sería incompleta si ignorara la dimensión territorial y los posibles spillovers entre estados.En particular, los resultados de autocorrelación espacial respaldan la inclusión de efectos espaciales en futuros modelos.

11 11. Principales insights del ESDA

  • Las exportaciones reales están distribuidas de forma desigual entre los estados de México.
  • Existen diferencias regionales marcadas en variables económicas y territoriales.
  • Los histogramas y boxplots sugieren sesgo y presencia de valores extremos en varias variables.
  • La transformación logarítmica mejora la comparación visual de variables originalmente asimétricas.
  • Los mapas coropléticos muestran concentración territorial en variables clave para explicar exportaciones.
  • La matriz de contigüidad confirma que los estados están conectados espacialmente de forma analíticamente relevante.
  • Global Moran’s I permite evaluar si los patrones espaciales observados son estructurados o aleatorios.
  • La cercanía geográfica puede desempeñar un papel importante en la dinámica exportadora.
  • El ESDA proporciona una base sólida para modelos predictivos y prescriptivos con dimensión espacial.

Estos insights muestran que la estructura exportadora mexicana no solo es desigual, sino también territorialmente organizada. Por ello, cualquier interpretación estratégica debe considerar no solo cuánto exporta cada estado, sino también dónde está ubicado y con qué vecinos interactúa.En conjunto, la evidencia sugiere que las diferencias entre estados no son independientes entre sí, sino que forman parte de una dinámica regional interconectada.

12 12. Conclusión

El desempeño exportador de México es desigual y presenta una estructura territorial clara. La combinación de estadísticas descriptivas, análisis de distribución, mapas, matriz de pesos espaciales y Moran’s I permite comprender mejor cómo las diferencias regionales y la proximidad geográfica influyen en las exportaciones.

En conjunto, este ESDA ofrece una base robusta para futuros análisis predictivos y prescriptivos que incorporen explícitamente la dimensión espacial en la toma de decisiones.

Desde una perspectiva más amplia, el principal valor del ejercicio es demostrar que el territorio no es solo un contexto pasivo, sino un componente activo en la explicación del desempeño económico. Por ello, entender la geografía de las exportaciones permite generar diagnósticos más completos y decisiones más estratégicas.Esto refuerza la idea de que los patrones observados no son aleatorios, sino que responden a una estructura espacial que debe ser considerada en cualquier análisis económico aplicado.