Descripción de la técnica

El análisis de conglomerados corresponde a un conjunto de técnicas que permite clasificar observaciones (casos) en grupos relativamente homogeneos internamente y, al mismo tiempo, relativamente diferentes entre ellos. A estos grupos se les denomina clusters o conglomerados.

Este tipo de análisis multivariado es de caracter exploratorio y descriptivo, en la medida que no utiliza ningún tipo de modelo estadístico para realizar el proceso de clasificación de observaciones, pero es una buena estrategia para develar patrones de comportamiento o de caracteristicas en nuestro conjunto de datos.

Se trata de un método de interdependencia, en la medida que estima las relaciones interdependientes de todo el conjunto de variables considerado, sin distinción entre variables dependientes o independientes.

En particular, el análisis de conglomerados jerárquicos corresponde a una técnica de agrupación aglomerativa ideal cuando se trabaja con pocas observaciones.

Librerias a utilizar

Para la realización de este análisis, se utilizarán las siguientes paqueterías: haven para importar bases de datos en formato .sav (SPSS), dplyr y tidyr para la manipulación y transformación de la data, corrplot para visualizar las correlaciones entre variables y, finalmente, el paquete factoextra, que nos permitirá realizar el análisis de conglomerados jerárquicos.

library(haven)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyr)
library(corrplot)
## corrplot 0.84 loaded
library("factoextra")
## Loading required package: ggplot2
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa

Problema de investigación

En este ejercicio, se busca realizar una aproximación exploratoria al problema de la criminalidad, operacionalizada como la cantidad de homicidios intencionales por cada 100.000 habitantes para un conjunto de 31 países. Se utilizará la variable de homicidios intencionales como proxy de criminalidad en la medida que las estadísticas de homicidios son más confiables que las de otro tipo de delitos, debido a que presentan menor tasa de sub-reporte y corresponde a una clasificación de delito más estandarizado en las estadísticas entre países. Además, se encuentra correlacionado con crímenes violentos y también pueden tener fines de lucro como motivación (como el hurto o el robo). La principal pregunta por responder corresponde a cuáles son las características de los países con mayor criminalidad. Por tanto, se busca identificar patrones institucionales y socio-económicas que permitan caracterizar a los países.

Cargar y explorar datos

Para el ejercicio, utilizaremos una base de datos de 31 países (31 observaciones), para cada uno de los cuáles contamos con variables de desarrollo económico, político y social, obtenida de World Bank Economic Indicators.

paises_2020 <- read_sav("raw/Datos_ Paises-2020-2.sav")

Para revisar la estructura de la base de datos, utilizaremos la función glimpse, que nos permitirá visualizar las variables que componen nuestro conjunto de datos, además de su clase. Junto con ello, nos muestra la cantidad de filas y columnas que contiene la base de datos.

Como se observa, con la excepción de la variable country (que corresponde a una tipo character, al contener el nombre de los países), todas nuestras variables son cuantitativas.

paises_2020 %>% glimpse()
## Rows: 31
## Columns: 19
## $ country         <chr> "Alemania", "Australia", "Austria", "Chile", "China", ~
## $ pop_total       <dbl> 82927922, 24992369, 8847037, 18729160, 1392730000, 408~
## $ urban_per       <dbl> 77.312, 86.012, 58.297, 87.564, 59.152, 56.947, 87.874~
## $ fertility_rate  <dbl> 1.5700, 1.7650, 1.5300, 1.6780, 1.6830, 1.4200, 1.7900~
## $ mort5yo_rate    <dbl> 3.7, 3.5, 3.6, 7.4, 9.3, 4.6, 4.3, 5.6, 2.1, 3.1, 6.6,~
## $ lifexp_years    <dbl> 80.99024, 82.49756, 81.64146, 79.90900, 76.47000, 77.8~
## $ age65_per       <dbl> 33.061, 24.030, 28.488, 16.779, 15.338, 31.434, 31.089~
## $ seceduc_per     <dbl> 96.30963, 90.36515, 100.00000, 79.30257, 78.62000, 95.~
## $ expeduc_years   <dbl> 17.09638, 22.10372, 16.28676, 16.53156, 13.88892, 14.9~
## $ gdp_percap      <dbl> 47603.028, 57373.687, 51461.955, 15923.359, 9770.847, ~
## $ tax_pergdp      <dbl> 37.555, 28.200, 42.675, 20.400, 17.530, 37.900, 45.900~
## $ govexp_pergdp   <dbl> 43.9, 36.5, 50.2, 25.2, 31.6, 47.1, 53.4, 42.4, 45.4, ~
## $ poverty_per     <dbl> 0.104, 0.124, 0.094, 0.165, 0.033, 0.195, 0.058, 0.085~
## $ gini_index      <dbl> 31.9, 34.4, 29.7, 44.4, 38.5, 30.4, 28.7, 25.2, 24.2, ~
## $ ishare_top10    <dbl> 24.8, 27.8, 23.8, 37.9, 29.4, 23.2, 23.8, 20.9, 21.0, ~
## $ labo_fem_rate   <dbl> 55.3, 59.7, 54.8, 51.0, 61.3, 45.7, 58.1, 52.7, 53.4, ~
## $ laborpar_gengap <dbl> -10.9, -10.8, -11.1, -23.2, -14.6, -12.5, -7.8, -14.7,~
## $ internet_per    <dbl> 89.73912, 86.54505, 87.47914, 82.32749, 54.30000, 75.2~
## $ homic_per100    <dbl> 1.0, 0.8, 0.7, 4.3, 0.6, 1.1, 1.2, 1.5, 0.9, 0.7, 5.3,~

Selección de variables a considerar

Las variables escogidas corresponden a aquellas que la literatura ha señalado como determinantes socio-económicos e institucionales de la criminalidad. En particular, se considerarán medidas de desarrollo y bienestar, como el PIB per cápita, Esperanza de vida y Años de escolaridad esperada. Además, se considerarán medidas de pobreza y desigualdad, como la participación de los ingresos totales sostenida por el 10% más rico, la tasa de pobreza y la tasa de mortalidad de menores de 5 años por cada 1.000 nacidos vivos. Se decidió no incorporar el índice de gini, debido a que presentaba una colinealidad casi perfecta con la participación de los ingresos totales sostenida por el 10% más rico. Todas estas variables permiten capturar si los retornos esperados por la realización de actividades ilícitas son más altos que aquellos que las personas podrían obtener por el desarrollo de actividades lícitas y, por lo tanto, tener una asociación con las tasas de delincuencia. Además, se incorpora el porcentaje de población urbana, ya que las zonas urbanas presentan una mayor concentración de personas lo que implica un nivel de anonimato más alto para el desarrollo de actividades delictivas y el gasto público como proxy del tamaño del gobierno y complejidad de las funciones que realiza en una sociedad, lo que puede contribuir de mejor manera a la gobernanza y generar cohesión social, reduciendo las posibilidades de emergencia de la criminalidad, que las “teorías de desorganización social” han asociado a la anomía social.

Para el análisis, se creará un nuevo objeto que contendrá exclusivamente nuestras variables de interes. Para lo cuál utilizaremos la función select.

paises_var_seleccionadas <- paises_2020 %>% select(country,urban_per,expeduc_years,gdp_percap,govexp_pergdp,poverty_per,
                                                   ishare_top10,mort5yo_rate,lifexp_years,homic_per100)
summary(paises_var_seleccionadas)
##    country            urban_per     expeduc_years     gdp_percap   
##  Length:31          Min.   :34.03   Min.   :12.35   Min.   : 2010  
##  Class :character   1st Qu.:62.61   1st Qu.:14.81   1st Qu.:13099  
##  Mode  :character   Median :77.31   Median :16.27   Median :30371  
##                     Mean   :73.58   Mean   :16.29   Mean   :32987  
##                     3rd Qu.:86.28   3rd Qu.:17.66   3rd Qu.:50807  
##                     Max.   :93.81   Max.   :22.10   Max.   :82797  
##  govexp_pergdp    poverty_per      ishare_top10    mort5yo_rate   
##  Min.   :19.40   Min.   :0.0330   Min.   :20.90   Min.   : 2.100  
##  1st Qu.:33.45   1st Qu.:0.0820   1st Qu.:23.65   1st Qu.: 3.550  
##  Median :40.00   Median :0.1080   Median :26.20   Median : 4.300  
##  Mean   :39.11   Mean   :0.1249   Mean   :27.71   Mean   : 8.255  
##  3rd Qu.:44.65   3rd Qu.:0.1675   3rd Qu.:29.55   3rd Qu.: 7.500  
##  Max.   :56.60   Max.   :0.2660   Max.   :50.50   Max.   :39.400  
##   lifexp_years    homic_per100   
##  Min.   :63.54   Min.   : 0.200  
##  1st Qu.:76.27   1st Qu.: 0.800  
##  Median :80.99   Median : 1.200  
##  Mean   :78.48   Mean   : 4.039  
##  3rd Qu.:81.93   3rd Qu.: 3.750  
##  Max.   :84.10   Max.   :35.900

Análisis exploratorio de los datos

Se realizará un análisis descriptivo univariado (medidas de tendencia central y de dispersión) y bivariado (correlaciones).

Análisis univariado.

La distribución de todas las variables presenta un rango de oscilación importante. En primer lugar, se observa que el PIB per cápita promedio alcanza los US32.987, lo que corresponde a un PIB de país de alto desarrollo económico, según tipologías de organismos internacionales. A su vez, el valor mínimo alcanza solo US2.009 y el máximo US82.796. Esto sugiere una gran heterogeneidad entre los países que conforman esta muestra. Estas diferencias persisten en el caso de las demás variables de desarrollo y bienestar: así, por ejemplo, se observan 10 años de escolaridad esperados de diferencia entre la observación con el valor mínimo y el valor máximo, alcanzando una media de 16,29 años de escolaridad, lo que de todas formas es alto y supera los años de escolaridad obligatoria, dando cuenta que gran parte de los países consideradas presenta un alto nivel educativo en su población. En cuanto a la esperanza de vida, también se observan diferencias significativas entre el valor mínimo y máximo, en torno a 20 años aprox. de diferencia. En relación a estas variables, las diferencias entre los valores mínimos y máximos sugieren una gran heterogeneidad entre los niveles de desarrollo y bienestar de los países, sin embargo los promedios de las 3 se encuentran relativamente altos, lo que puede ser expresión de que predominan los países de mayor nivel de desarrollo.

Por otro lado, las variables asociadas a pobreza y desigualdad, también sugieren diferencias importantes. En relación a la tasa de pobreza, se observa que en la observación con el valor mínimo el porcentaje de población bajo la línea de la pobreza alcanza solo el 3%, mientras que el valor máximo corresponde al 27%, con un promedio del 12%. La tasa de mortalidad de menores de 5 años, usualmente utilizada también como proxy de pobreza, presenta también una variación importante: desde 2,1 menores de 5 años fallecidos por cada 1.000 nacidos vivos, lo que sugiere bajos niveles de pobreza en dicha sociedad, hasta un máximo de 39,4 menores de 5 años fallecidos por cada 1.000 nacidos vivos, lo que puede estar asociado a niveles de pobreza preocupantes. Finalmente, la participación del 10% más rico sobre los ingresos totales, es del 20,9 en el caso de la observación con el valor mínimo y 50,5 en el caso del valor máximo, con un promedio del 27,7. Al igual que en lo observado en las medidas de desarrollo y bienestar, se constata una variación importante entre países en estos indicadores, pero con promedios relativamente bajos, más cercanos a los valores mínimos que máximos, lo que sugiere que predominan países con buen rendimiento en estas materias, tal como se observó en los indicadores de bienestar.

Asimismo, en cuanto a gasto público, se replica el patrón antes presentado: esto es, diferencias importantes el valor mínimo (gasto equivalente al 19,4% PIB) y el valor máximo (56,6% del PIB), con una media más cercana a los mejores rendimientos (39,1%). Asimismo ocurre con la proporción de población urbana y en cuanto a la cantidad de homicidios intencionales por cada 100.000 personas, donde en relación a esta última las diferencias son bastante significativas, desde 0,2 homicidios por cada 100.000 habitantes hasta 35,9.

tabla_descriptivos <- paises_var_seleccionadas %>% pivot_longer(cols = -1,
                                                                names_to = "variables",
                                                                values_to = "values") %>%
  group_by(variables) %>%
  summarise(Min = min(values,na.rm = TRUE),
            Max = max(values,na.rm = TRUE),
            Media = mean(values,na.rm = TRUE),
            Desv_est = sd(values,na.rm = TRUE)) 

knitr::kable(tabla_descriptivos, caption = "Estadísticos descriptivos")
Estadísticos descriptivos
variables Min Max Media Desv_est
expeduc_years 12.34981 22.10372 1.629477e+01 2.229931e+00
gdp_percap 2009.97886 82796.54716 3.298729e+04 2.264940e+04
govexp_pergdp 19.40000 56.60000 3.911290e+01 9.563463e+00
homic_per100 0.20000 35.90000 4.038710e+00 7.519383e+00
ishare_top10 20.90000 50.50000 2.770968e+01 6.451116e+00
lifexp_years 63.53800 84.09976 7.847654e+01 4.920840e+00
mort5yo_rate 2.10000 39.40000 8.254839e+00 9.678837e+00
poverty_per 0.03300 0.26600 1.249032e-01 5.866590e-02
urban_per 34.03000 93.81300 7.358197e+01 1.553884e+01

Análisis bivariado

Al realizar un análisis bivariado de las variables escogidas mediante una correlación, se observa que los homicidios intencionales por cada 100.000 personas presentan una relación coincidente con lo esperable teóricamente. La correlación entre la cantidad de homicidios con la desigualdad y pobreza es positiva y alta, siendo 0,77 y 0,57 respectivamente. Esto quiere decir que los valores altos en cantidad de homicidios se corresponden en mayor medida con los valores altos en participación de los ingresos totales sostenida por el 10% más rico y en tasa de pobreza. Su correlación con tasa de mortalidad de menores de 5 años, considerada como otra medida de pobreza en este ejercicio, es de 0,63. Por otro lado, la correlación entre los homicidios intencionales y PIB per cápita, Gasto público y años de escolaridad esperados es negativa y moderada, moviéndose entre -0,39 y -0,42. Ello da cuenta que sociedades con mayor nivel de desarrollo, Estados más grandes y complejos y con población más escolarizada presentan simultáneamente una menor cantidad de casos de homicidios intencionales por cada 100.000 habitantes. Esta tendencia se reafirma al observar su correlación con esperanza de vida, otra medida de desarrollo y bienestar, donde la correlación sigue siendo negativa pero más alta que las recién mencionadas. Solo llama la atención que la proporción de población urbana presenta una correlación negativa.

Por último, cabe destacar que existe una correlación positiva y alta entre PIB per cápita y años de educación esperados (0,72), lo que da cuenta que los países con mayor PIB son simultáneamente los que presentan también más años de escolaridad. Asimismo, destaca la correlación negativa y alta entre la tasa de mortalidad infantil y la esperanza de vida.

paises_var_seleccionadas_cor <- paises_var_seleccionadas %>% select(-country)
matriz_correlaciones <- cor(paises_var_seleccionadas_cor, method = "pearson")
graf_correlaciones2 <-corrplot(matriz_correlaciones, method="number", type="upper", tl.cex = 0.7, number.cex = 0.7)

Preparar data para el análisis

Previo a la realización del análisis, debemos preparar nuestro conjunto de datos. En particular, es pertinente revisar que nuestras observaciones no cuenten con valores perdidos para las variables consideradas. Si ese fuera el caso, se deberán excluir dichas observaciones del análisis o imputar el valor perdido. En nuestro caso, eliminaremos dichos casos.

# Eliminar los casos perdido (i.e, NA siginifica not available)
paises_var_seleccionadas_cor <- na.omit(paises_var_seleccionadas_cor) #No se elimina nada porque ningun caso tiene valores perdidos

Luego, estandarizaremos todas nuestras variables, debido a que se encuentran en diferentes escalas de medición. Para ello utilizaremos la función scale.

# La funcion scale estandariza las variables: creamos una nueva base con las variables estandarizadas
paises_scaled <- scale(paises_var_seleccionadas_cor)

Una vez limpio de datos perdidos y con nuestras variables estandarizadas, agregaremos una nueva columna con el nombre de los países.

rownames(paises_scaled) <- paises_var_seleccionadas$country #asignamos los paises como nombre de las filas

La clasificación de las observaciones en conglomerados requiere de un método de cálculo de la distancia entre dos observaciones. Como resultado de este cálculo, se obtiene una matriz de distancias entre observaciones, en donde a menor distancia entre ellas, más se parecerán las observaciones en las caracteristicas o patrones observados de interes.

La elección de la medida de distancia es un paso crucial en la agrupación e influye en la forma en que se agrupan las observaciones en conglomerados. En este caso, utilizaremos la distancia euclidiana, que corresponde a la que R o SPSS usa por defecto.

# Medidas de similaridad - Generamos la matriz de distancias
res.dist <- dist(paises_scaled, method = "euclidean")^2 #euclidea al cuadrado (^2)
res.dist.mat <- as.matrix(res.dist)[1:31, 1:31]
res.dist.mat
##                   Alemania Australia   Austria     Chile     China   Croacia
## Alemania         0.0000000  6.568073  2.164565 11.870969 11.033462  7.718597
## Australia        6.5680730  0.000000 12.782707 14.594665 25.566511 21.386549
## Austria          2.1645649 12.782707  0.000000 19.604259 11.616322  6.656799
## Chile           11.8709694 14.594665 19.604259  0.000000 12.837050 15.521067
## China           11.0334617 25.566511 11.616322 12.837050  0.000000 11.795454
## Croacia          7.7185969 21.386549  6.656799 15.521067 11.795454  0.000000
## Dinamarca        3.2407948  6.775417  5.881952 22.435706 21.246605 17.866265
## Eslovaquia       6.3130414 21.844028  4.475591 18.091927  4.365239  4.035996
## Eslovenia        3.5735286 12.925375  2.066705 18.633139  9.152659  5.680004
## España           1.6078786  5.775288  5.172950  8.468309 13.575697  6.824232
## Estados Unidos   4.1581673  9.111412  8.337990  7.579972 16.044784 10.189801
## Filipinas       34.2443305 48.710460 35.874232 20.438918 18.532116 20.581713
## Finlandia        3.4266662  7.501590  5.556913 23.306665 21.234016 16.042651
## Francia          2.7322745 14.428352  3.083007 18.151046 13.839880  9.670488
## Hungría          4.2603284 18.107299  4.886110 14.660539  5.545430  4.885501
## India           43.2649424 61.133962 41.670698 33.849589 25.449837 25.487697
## Islandia         4.1332708  4.848718  8.862133 20.786539 22.783375 22.621955
## Israel           2.9820372  8.876370  8.253775  6.890739 15.551004  9.044095
## Japón            3.2177781 10.988924  7.994237  8.939277 14.861020  9.078194
## Lituania         6.6838492 14.110324  9.876865  5.857533  8.291468  4.293124
## México          23.6238586 33.117897 29.676739 10.403793 18.575518 21.415677
## Nueva Zelanda    1.2357031  3.003023  6.001168  9.656597 14.117549 11.548883
## Países Bajos     1.2922633  5.105388  5.717595 14.657703 16.118654 14.046553
## Reino Unido      0.3574142  5.316815  4.090820  9.308950 11.926798  8.251148
## Republica Checa  2.3480310 11.137328  4.445887 13.178281  5.937307  8.336626
## Rusia            9.2169790 19.348807 13.078872  7.059342  6.365081  7.815322
## Sudáfrica       77.0464163 88.057548 82.075098 49.245016 63.929556 63.580044
## Suecia           1.6587977  4.859529  4.892350 17.942226 19.533221 13.878856
## Suiza            3.9734951  9.455121  5.887428 16.823517 16.225598 16.887836
## Surinam         28.1457191 40.470513 32.096454 10.576122 16.556055 19.157174
## Tailandia       14.6346611 26.490437 15.598760 12.023658  2.117406 12.768541
##                  Dinamarca Eslovaquia Eslovenia     España Estados Unidos
## Alemania         3.2407948   6.313041  3.573529  1.6078786       4.158167
## Australia        6.7754167  21.844028 12.925375  5.7752879       9.111412
## Austria          5.8819520   4.475591  2.066705  5.1729500       8.337990
## Chile           22.4357059  18.091927 18.633139  8.4683094       7.579972
## China           21.2466052   4.365239  9.152659 13.5756971      16.044784
## Croacia         17.8662647   4.035996  5.680004  6.8242323      10.189801
## Dinamarca        0.0000000  14.750291  8.718420  6.4733702      10.262877
## Eslovaquia      14.7502910   0.000000  2.668096  8.8859289      12.993526
## Eslovenia        8.7184203   2.668096  0.000000  4.9402239      12.272170
## España           6.4733702   8.885929  4.940224  0.0000000       4.982112
## Estados Unidos  10.2628766  12.993526 12.272170  4.9821116       0.000000
## Filipinas       54.0384225  22.582105 33.170337 33.1658638      26.272507
## Finlandia        0.4401771  13.558166  7.116303  5.8261508      11.975217
## Francia          4.1270267   8.281718  6.246324  4.9798630       9.008733
## Hungría          9.7818482   1.973369  3.871838  6.3178290      10.412896
## India           62.7733893  27.725887 39.662740 43.2732437      36.777438
## Islandia         1.6788342  18.253451 11.849449  7.4816515       9.566523
## Israel           8.8175335  12.093344 10.411603  1.8558304       2.626298
## Japón            9.6390312  10.925909  9.687074  2.3428239       4.540116
## Lituania        16.8031430   6.446369  8.043167  5.7108066       5.541650
## México          36.2503347  22.720475 28.500771 22.1829457      15.821411
## Nueva Zelanda    3.4129603  10.878270  6.295602  1.2665939       5.019596
## Países Bajos     1.6633885  11.544812  7.316290  3.1509040       6.360654
## Reino Unido      3.9392672   7.932324  5.012582  0.8651864       3.503798
## Republica Checa  6.8281054   3.388826  2.351659  4.0349244      10.090717
## Rusia           18.4111718   7.159832 11.136683  9.5826163       8.354435
## Sudáfrica       93.3894142  71.914300 83.927645 75.1441964      56.441630
## Suecia           0.7449968  12.661060  6.800689  3.2766867       7.605006
## Suiza            7.9987118  12.978832 10.167169  7.7780924       5.638688
## Surinam         44.8011549  23.606468 32.366810 26.1924046      18.494234
## Tailandia       28.1927148   6.614190 11.291354 15.7156510      17.352178
##                 Filipinas  Finlandia   Francia   Hungría     India  Islandia
## Alemania        34.244330  3.4266662  2.732274  4.260328 43.264942  4.133271
## Australia       48.710460  7.5015899 14.428352 18.107299 61.133962  4.848718
## Austria         35.874232  5.5569132  3.083007  4.886110 41.670698  8.862133
## Chile           20.438918 23.3066649 18.151046 14.660539 33.849589 20.786539
## China           18.532116 21.2340163 13.839880  5.545430 25.449837 22.783375
## Croacia         20.581713 16.0426505  9.670488  4.885501 25.487697 22.621955
## Dinamarca       54.038422  0.4401771  4.127027  9.781848 62.773389  1.678834
## Eslovaquia      22.582105 13.5581662  8.281718  1.973369 27.725887 18.253451
## Eslovenia       33.170337  7.1163027  6.246324  3.871838 39.662740 11.849449
## España          33.165864  5.8261508  4.979863  6.317829 43.273244  7.481651
## Estados Unidos  26.272507 11.9752169  9.008733 10.412896 36.777438  9.566523
## Filipinas        0.000000 54.7786131 42.538629 27.082663  3.444733 55.780524
## Finlandia       54.778613  0.0000000  3.816218  8.697837 63.303596  3.093763
## Francia         42.538629  3.8162179  0.000000  4.422778 49.681138  7.898916
## Hungría         27.082663  8.6978374  4.422778  0.000000 33.703681 13.824511
## India            3.444733 63.3035963 49.681138 33.703681  0.000000 67.664697
## Islandia        55.780524  3.0937632  7.898916 13.824511 67.664697  0.000000
## Israel          32.016067  9.3121625  6.014634  8.409784 43.572972  8.405069
## Japón           33.496302  9.8785818  5.958726  8.173093 45.127609  8.886541
## Lituania        15.119899 16.3820171 12.670800  5.697831 24.303375 18.229824
## México          14.519871 37.0573549 28.655811 20.017290 27.888127 36.679528
## Nueva Zelanda   37.272251  3.6483533  5.443620  7.293723 47.811821  3.358261
## Países Bajos    43.905997  2.2259599  4.286881  7.557170 54.589247  1.375804
## Reino Unido     33.312451  4.1397060  3.802542  5.098779 43.346653  4.276688
## Republica Checa 31.920513  6.0787540  5.288636  2.154179 40.839648  8.144120
## Rusia           14.575858 18.2586315 13.383369  4.792350 23.906895 20.567372
## Sudáfrica       29.824513 95.7246762 81.364460 67.875367 35.938569 98.813804
## Suecia          48.511404  0.8257235  3.752234  8.503602 58.266653  1.742637
## Suiza           39.491076 10.1941666  9.191091 13.384275 50.072787  5.071725
## Surinam          6.341308 46.0687626 32.819522 22.711847 12.670743 46.949316
## Tailandia       12.637275 28.0964135 21.385941 10.247748 20.748477 28.170514
##                     Israel      Japón  Lituania    México Nueva Zelanda
## Alemania         2.9820372  3.2177781  6.683849 23.623859     1.2357031
## Australia        8.8763704 10.9889243 14.110324 33.117897     3.0030227
## Austria          8.2537747  7.9942373  9.876865 29.676739     6.0011684
## Chile            6.8907390  8.9392775  5.857533 10.403793     9.6565974
## China           15.5510040 14.8610197  8.291468 18.575518    14.1175485
## Croacia          9.0440952  9.0781940  4.293124 21.415677    11.5488829
## Dinamarca        8.8175335  9.6390312 16.803143 36.250335     3.4129603
## Eslovaquia      12.0933436 10.9259094  6.446369 22.720475    10.8782702
## Eslovenia       10.4116031  9.6870744  8.043167 28.500771     6.2956018
## España           1.8558304  2.3428239  5.710807 22.182946     1.2665939
## Estados Unidos   2.6262980  4.5401158  5.541650 15.821411     5.0195960
## Filipinas       32.0160672 33.4963018 15.119899 14.519871    37.2722515
## Finlandia        9.3121625  9.8785818 16.382017 37.057355     3.6483533
## Francia          6.0146339  5.9587255 12.670800 28.655811     5.4436204
## Hungría          8.4097839  8.1730929  5.697831 20.017290     7.2937233
## India           43.5729720 45.1276093 24.303375 27.888127    47.8118211
## Islandia         8.4050693  8.8865405 18.229824 36.679528     3.3582613
## Israel           0.0000000  0.5305257  6.731576 19.364101     2.9930443
## Japón            0.5305257  0.0000000  8.187950 21.833701     3.8607889
## Lituania         6.7315755  8.1879501  0.000000 11.475330     7.7098158
## México          19.3641012 21.8337011 11.475330  0.000000    24.0140978
## Nueva Zelanda    2.9930443  3.8607889  7.709816 24.014098     0.0000000
## Países Bajos     3.9907704  4.1741286 11.362895 28.373452     1.0083037
## Reino Unido      1.7449812  2.2196740  5.943494 21.645402     0.5188729
## Republica Checa  7.1360115  6.3794952  6.813300 23.370835     3.6105762
## Rusia            9.7917487 11.3784031  1.934495  7.299513    10.4301922
## Sudáfrica       70.1344030 77.7794084 50.034424 23.649162    77.9214750
## Suecia           5.3018186  5.8058509 12.997055 32.147995     1.5574418
## Suiza            7.0435775  6.7196826 13.877192 30.213804     6.0406404
## Surinam         22.9812983 26.0912751 11.580198 10.829237    29.7357135
## Tailandia       18.3077390 17.7462725  7.369556 16.189743    17.1336046
##                 Países Bajos Reino Unido Republica Checa     Rusia Sudáfrica
## Alemania           1.2922633   0.3574142        2.348031  9.216979  77.04642
## Australia          5.1053877   5.3168149       11.137328 19.348807  88.05755
## Austria            5.7175945   4.0908196        4.445887 13.078872  82.07510
## Chile             14.6577027   9.3089503       13.178281  7.059342  49.24502
## China             16.1186536  11.9267979        5.937307  6.365081  63.92956
## Croacia           14.0465532   8.2511479        8.336626  7.815322  63.58004
## Dinamarca          1.6633885   3.9392672        6.828105 18.411172  93.38941
## Eslovaquia        11.5448117   7.9323235        3.388826  7.159832  71.91430
## Eslovenia          7.3162896   5.0125816        2.351659 11.136683  83.92765
## España             3.1509040   0.8651864        4.034924  9.582616  75.14420
## Estados Unidos     6.3606535   3.5037978       10.090717  8.354435  56.44163
## Filipinas         43.9059974  33.3124510       31.920513 14.575858  29.82451
## Finlandia          2.2259599   4.1397060        6.078754 18.258631  95.72468
## Francia            4.2868811   3.8025416        5.288636 13.383369  81.36446
## Hungría            7.5571700   5.0987792        2.154179  4.792350  67.87537
## India             54.5892471  43.3466533       40.839648 23.906895  35.93857
## Islandia           1.3758042   4.2766882        8.144120 20.567372  98.81380
## Israel             3.9907704   1.7449812        7.136012  9.791749  70.13440
## Japón              4.1741286   2.2196740        6.379495 11.378403  77.77941
## Lituania          11.3628949   5.9434940        6.813300  1.934495  50.03442
## México            28.3734525  21.6454023       23.370835  7.299513  23.64916
## Nueva Zelanda      1.0083037   0.5188729        3.610576 10.430192  77.92148
## Países Bajos       0.0000000   1.1121318        3.898383 13.318503  86.85891
## Reino Unido        1.1121318   0.0000000        2.803128  8.521686  74.53803
## Republica Checa    3.8983828   2.8031276        0.000000  7.434724  80.27032
## Rusia             13.3185032   8.5216856        7.434724  0.000000  42.04130
## Sudáfrica         86.8589108  74.5380312       80.270321 42.041301   0.00000
## Suecia             0.6324293   1.8114946        5.230731 15.826184  90.27729
## Suiza              4.9574920   4.8513704        8.684015 17.844680  87.55961
## Surinam           36.3983301  26.5446087       28.655725 10.306044  25.00853
## Tailandia         20.8956017  15.0125701        9.299944  7.149112  59.48361
##                     Suecia     Suiza   Surinam Tailandia
## Alemania         1.6587977  3.973495 28.145719 14.634661
## Australia        4.8595295  9.455121 40.470513 26.490437
## Austria          4.8923497  5.887428 32.096454 15.598760
## Chile           17.9422261 16.823517 10.576122 12.023658
## China           19.5332215 16.225598 16.556055  2.117406
## Croacia         13.8788562 16.887836 19.157174 12.768541
## Dinamarca        0.7449968  7.998712 44.801155 28.192715
## Eslovaquia      12.6610598 12.978832 23.606468  6.614190
## Eslovenia        6.8006894 10.167169 32.366810 11.291354
## España           3.2766867  7.778092 26.192405 15.715651
## Estados Unidos   7.6050057  5.638688 18.494234 17.352178
## Filipinas       48.5114042 39.491076  6.341308 12.637275
## Finlandia        0.8257235 10.194167 46.068763 28.096413
## Francia          3.7522337  9.191091 32.819522 21.385941
## Hungría          8.5036016 13.384275 22.711847 10.247748
## India           58.2666531 50.072787 12.670743 20.748477
## Islandia         1.7426370  5.071725 46.949316 28.170514
## Israel           5.3018186  7.043577 22.981298 18.307739
## Japón            5.8058509  6.719683 26.091275 17.746273
## Lituania        12.9970553 13.877192 11.580198  7.369556
## México          32.1479948 30.213804 10.829237 16.189743
## Nueva Zelanda    1.5574418  6.040640 29.735713 17.133605
## Países Bajos     0.6324293  4.957492 36.398330 20.895602
## Reino Unido      1.8114946  4.851370 26.544609 15.012570
## Republica Checa  5.2307309  8.684015 28.655725  9.299944
## Rusia           15.8261837 17.844680 10.306044  7.149112
## Sudáfrica       90.2772947 87.559613 25.008526 59.483605
## Suecia           0.0000000  6.420629 40.434466 24.750542
## Suiza            6.4206291  0.000000 34.955255 18.427739
## Surinam         40.4344663 34.955255  0.000000 14.845104
## Tailandia       24.7505415 18.427739 14.845104  0.000000

Junto con la medida de distancia, se debe escoger el método de aglomeración a utilizar, que corresponde a una función de vinculación para la aglomeración (o linkage). Algunos de los métodos de aglomeración son los siguientes:

Maximum or complete linkage (vecino más lejano): La distancia entre dos grupos se define como el valor máximo de todas las distancias de pares entre los elementos en el grupo 1 y los elementos en el grupo 2. Tiende a producir grupos más compactos.

Minimum or single linkage (vecino más próximo): La distancia entre dos grupos se define como el valor mínimo de todas las distancias de pares entre los elementos en el grupo 1 y los elementos en el grupo 2. Tiende a producir grupos largos.

Mean or average linkage (promedio entre grupos): La distancia entre dos grupos se define como la distancia promedio entre los elementos en el grupo 1 y los elementos en el grupo 2. Corresponde al método que utiliza SPSS por defecto.

Ward’s minimum variance method: Minimiza la varianza total dentro del clúster. En cada paso, el par de grupos o clústers con una distancia mínima entre grupo es fusionado.

En nuestro caso, utilizaremos la función de vinculación de promedio entre grupos (average).

#El metodo de aglomeracion (linkage) a usar para establecer la distnacia entre los conglomerados. 
#Los metodos disponibles son "ward.D", "ward.D2", "single", "complete", "average", "mcquitty", "median" or "centroid".
res.hc <- hclust(d = res.dist, method = "average")

A continuación, podemos ver una primera visualización de la aglomeración, mediante el dendograma, que muestra el proceso de agrupación como una jerarquía multinivel, donde los grupos de un nivel se van uniendo para formar los grupos del siguiente nivel. En dicha visualización, las observaciones similares se conectan con otras observaciones mediante enlaces, según la similitud que existe entre ellos en base a la matriz de distancias antes calculada.

Esta herramienta permite visualizar la aglomeración y definir la cantidad de conglomerados a escoger.

# Dendrogram
fviz_dend(res.hc, cex = 0.5) #Paquete facto extra

A modo de ejemplo, podemos revisar la manera en que se agruparían nuestras observaciones si adoptaramos soluciones de 3, 4 o 5 conglomerados.

plot(res.hc) #zoom para ver  con claridad, si sale mal, agrandar la subventana donde aparecen los graficos

rect.hclust (res.hc, k=3, border="red")      
rect.hclust (res.hc, k=4, border="blue")
rect.hclust (res.hc, k=5, border="green")

Generar y analizar clusters

Luego de revisadas las alternativas del gráfico, se escogió una partición de 4 conglomerados, pues permite equilibrar tanto parsimonia como pertinente teórica. Tal como se presenta a continuación, se conforma un conglomerado que agrupa a parte importante de los países considerados, los que mantienen un grado bajo de disimilaridad. Debido a que sus medidas de disimilaridad son bajas, cualquier intento por generar alguna partición que lo divida en grupos con una menor cantidad de casos cada uno, generará más de 8 conglomerados, 2 de ellas compuestos por solo un país, lo que no es eficiente considerando que se trata de solo 31 países.

En el otro extremo, se conforma un conglomerado con solo un país, el que presenta una medida de disimilaridad con el conglomerado más cercano demasiado alta. Esto quiere decir que evitar que este país quede en solitario requeriría disminuir a 2 la cantidad de particiones, generando dos conglomerados implicando una pérdida importante en la capacidad de diferenciación al interior de los cluster. Adoptar una solución de dos conglomerados, implicaría agrupar a países de alto nivel de desarrollo y bienestar con otras economías importantes, pero aun en vías de desarrollo y menores niveles de bienestar México, China, Tailandia, Chile, Lituania y Rusia.

Por otro lado, con una solución de 5 particiones se seguiría dejando intacto el gran conglomerado de 21 países. Al adoptar dicha partición, el quinto conglomerado surgiría de la división del conglomerado que agrupa a países en vías de desarrollo, separándose México de dicho grupo, constituyendo por sí mismo en el nuevo cluster. Finalmente, considerando dichas alternativas, se decidió descartar la generación de 5 conglomerados, debido a que para la naturaleza del problema a indagar (patrones asociados a la criminalidad) no reporta mayor riqueza analítica generar una diferenciación entre los países que conforman el conglomerado destacado en celeste en el dendograma. A su vez, se descartó la generación de 2 particiones, pues no resulta teóricamente interesante conformar solo 2 grandes conglomerados. Además, para el total de países considerados, 4 particiones representan una solución parsimoniosa, aun cuando uno de ellos este compuesto por un solo país.

Para observar el conglomerado de pertenencia para cada observación (en este caso, para cada país), podemos utilizar el siguiente comando:

grp_4 <- cutree(res.hc, k = 4) # Cortar el dendograma en 3 grupos
head(grp_4, n = 31)
##        Alemania       Australia         Austria           Chile           China 
##               1               1               1               2               2 
##         Croacia       Dinamarca      Eslovaquia       Eslovenia          España 
##               1               1               1               1               1 
##  Estados Unidos       Filipinas       Finlandia         Francia         Hungría 
##               1               3               1               1               1 
##           India        Islandia          Israel           Japón        Lituania 
##               3               1               1               1               2 
##          México   Nueva Zelanda    Países Bajos     Reino Unido Republica Checa 
##               2               1               1               1               1 
##           Rusia       Sudáfrica          Suecia           Suiza         Surinam 
##               2               4               1               1               3 
##       Tailandia 
##               2

A su vez, también podemos observar el número de casos por conglomerado.

table(grp_4)
## grp_4
##  1  2  3  4 
## 21  6  3  1

Finalmente, podemos visualizar el dendograma de nuestra solución final con 4 conglomerados.

fviz_dend(res.hc, k = 4, # Solución de 4 conglomerados
          cex = 0.5, # tamaño de etiquetas
          k_colors = c("#FC4E07", "#00AFBB", "#E7B800","#B2182B"), #Paleta de colores
          color_labels_by_k = TRUE, # Etiquetas de color por grupos
          rect = TRUE # Añadir rectangulos que encuadren cada grupo
)

También se puede observar el resultado en un scatter plot.

fviz_cluster(list(data = paises_scaled, cluster = grp_4),
             palette = c("#FC4E07", "#00AFBB", "#E7B800","#B2182B"),
             ellipse.type = "convex", # Forma de la concentración
             repel = TRUE, 
             show.clust.cent = FALSE, ggtheme = theme_minimal())

Por último, vamos a añadir a la base de datos una variable adicional con el conglomerado de pertenencia para cada observación. Esta variable nos permitirá caracterizar mejor estos conglomerados y podremos utilizarla para otro tipo de análisis.

#añadimos una variable con el conglomerado de pertenencia a la base original k=numero de conglomerados
paises_var_seleccionadas$cluster<-cutree(res.hc, k = 4) 

Para terminar, realizaremos una table que nos permita contrastar las medias para cada una de nuestras variables de interes, en los 4 conglomerados conformados.

#Creamos la tabla para comparar la media de los conglomerados
paises_var_seleccionadas_longer_2 <- paises_var_seleccionadas %>% pivot_longer(cols = contains("_"),
                                                                               names_to = "variables",
                                                                               values_to = "values")
tabla_medias_variables <- paises_var_seleccionadas_longer_2 %>% 
  group_by(cluster,variables) %>%
  summarise(Media = mean(values)) %>%
  ungroup() 
## `summarise()` has grouped output by 'cluster'. You can override using the `.groups` argument.
tabla_medias_total <- paises_var_seleccionadas_longer_2 %>%
  group_by(variables) %>%
  summarise(Media_total = mean(values))

tabla_medias <- left_join(tabla_medias_variables,tabla_medias_total, by = "variables")

tabla_medias <- tabla_medias %>%
  pivot_wider(names_from = cluster, values_from = Media) %>%
  select(variables,`1`,`3`,`2`,`4`,Media_total) %>%
  rename("Baja criminalidad" = `1`,
         "Criminalidad media alta" = `2`,
         "Criminalidad media" = `3`,
         "Alta criminalidad" = `4`,
         "Total" = Media_total)

knitr::kable(tabla_medias, caption = "Tabla de medias por conglomerado")
Tabla de medias por conglomerado
variables Baja criminalidad Criminalidad media Criminalidad media alta Alta criminalidad Total
expeduc_years 1.724455e+01 12.64367 1.523390e+01 13.66788 1.629477e+01
gdp_percap 4.437151e+04 3782.24571 1.218058e+04 6374.02820 3.298729e+04
govexp_pergdp 4.429524e+01 24.83333 2.916667e+01 32.80000 3.911290e+01
homic_per100 1.219048e+00 5.70000 7.766667e+00 35.90000 4.038710e+00
ishare_top10 2.455238e+01 34.70000 3.146667e+01 50.50000 2.770968e+01
lifexp_years 8.108837e+01 70.52667 7.579979e+01 63.53800 7.847654e+01
mort5yo_rate 3.819048e+00 29.03333 8.583333e+00 37.10000 8.254839e+00
poverty_per 1.059524e-01 0.21500 1.226667e-01 0.26600 1.249032e-01
urban_per 7.851219e+01 48.99900 6.982217e+01 66.35500 7.358197e+01

El primer conglomerado que se genera agrupa a gran parte de los países considerados (21 países), todos los cuales pertenecen a la OCDE y corresponden a los países de alto nivel de desarrollo. Se trata de un conjunto de países con un PIB per cápita alto y altos niveles de gasto público, lo que sugiere buen desempeño en indicadores de bienestar y Estados complejos capaz de entregar servicios que contribuyen a la cohesión social. Esto va de la mano con, en promedio, menores niveles de pobreza y desigualdad de ingresos. A su vez, presentan poblaciones con más años de escolaridad, una esperanza de vida alta y una tasa de mortalidad infantil muy baja. Como se estableció teóricamente en el apartado inicial, se trata de países con condiciones socioeconómicas e institucionales menos propicias para la emergencia de la criminalidad, excepto por la proporción de población urbana, en donde se encuentran sobre la media de este conjunto de países. Como se verá, este conjunto de países presenta, en promedio, un mejor rendimiento que los otros dos conglomerados para todas las variables consideradas.

El conglomerado de criminalidad media se encuentra conformado por países de ingreso mediano bajo, lo que se observa en el bajo PIB per cápita promedio que obtiene este cluster. Este bajo nivel de desarrollo viene acompañado del peor rendimiento entre los países considerados en la mayoría de los indicadores de desarrollo y bienestar. Así, presentan años de escolaridad esperada bajos y niveles de gasto público muy bajos. Si bien, la esperanza de vida también se encuentra significativamente bajo el promedio, es superior a la que presenta el cuarto conglomerado, siendo una de sus principales diferencias con ese último cluster. De todas formas, su baja esperanza de vida puede dar cuenta de un bajo nivel de bienestar de su población. Por otro lado, sus resultados en las variables de desigualdad y pobreza son significativamente más altas que el promedio del total de los países aquí considerados, pero menos graves que lo que se observa en el conglomerado de criminalidad alta. Así, en lo que respecta a la participación en los ingresos totales del 10% más rico, la tasa de pobreza y de mortalidad infantil son peores a los observados en los conglomerados de Baja Criminalidad y Criminalidad media alta pero relativamente mejores a los que presenta el conglomerado de Criminalidad alta. Se trata del conjunto de países con la proporción de población urbana más baja. Por último, destaca que la cantidad de homicidios intencionales por cada 100.000 habitantes presenta un promedio levemente superior al promedio, incluso más bajo que el que se observa en el conglomerado de Criminalidad media alta, lo que resulta llamativo considerando su mal rendimiento en las dimensiones aquí analizadas.

El conglomerado de criminalidad media alta agrupa a 6 países de nivel de desarrollo medio y alto, la mayoría de ellos no europeos (excepto Lituania). Si bien, este conglomerado presenta un PIB per cápita significativamente inferior a la media del total de países de países que componen la muestra, el PIB per cápita promedio al interior del conglomerado corresponde al de países de ingreso mediano alto según la clasificación del Banco Mundial. Asimismo, su gasto público como porcentaje del PIB, esperanza de vida y los años de escolaridad se encuentran se encuentran en niveles inferiores al promedio del total de países considerados, aun cuando los años de escolaridad esperados podrían considerarse altos si no comparan con el promedio total, en la medida que alcanzan los 14 años. Se observa, además, una tasa de pobreza y una participación de los ingresos totales sostenida por el 10% más rico más alta que el promedio, mientras que la tasa de mortalidad de menores de 5 años se encuentra en el promedio. Presenta una baja proporción de personas residiendo en zonas urbanas. En todos los indicadores aquí observados presenta un mejor rendimiento que los países de criminalidad media, por lo que resulta llamativo que su cantidad de homicidios por cada 100.000 personas, se encuentra sobre el promedio total y sobre el promedio del conglomerado de criminalidad media. Esto puede estar asociado a la presencia de México en este conglomerado, que presenta una cantidad de homicidios intencionales que sesga hacia arriba el promedio del conglomerado.

Finalmente, el último conglomerado esta compuesto por solo un país (Sudáfrica), en el que se observa una cantidad de homicidios por cada 100.000 personas que es significativamente más alto que el que se observa en los demás grupos, superando con creces el promedio. Ello sugiere que se trata de un país con problemas asociados a violencia y criminalidad importantes. En cuanto al resto de las variables, se observa que en lo que respecta a su nivel de desarrollo (PIB per cápita) y los años de escolaridad esperados de la población, presentan promedios levemente más altos que los observados en el conglomerado de criminalidad media. Además, presentan un gasto público bajo el promedio, pero levemente más alto que el que se observa en los dos conglomerados anteriores. En estas últimas tres variables mencionadas, este conglomerado presenta una situación incluso mejor a la del conglomerado de criminalidad media. Sin embargo, su situación en lo que respecto a esperanza de vida y a los indicadores de desigualdad y pobreza da cuenta de una situación significativamente más grave que la observada en el conglomerado de criminalidad media, pareciendo encontrarse aquí las principales diferencias (junto a su tasa de homicidios) que lo diferencian y explican que se constituya en un conglomerado en sí mismo. Además, presentan una proporción de población residente en zonas urbanas bajo el promedio.

Conclusiones

El análisis de conglomerados realizado tuvo por objetivo identificar patrones institucionales y socioeconómicos (asociados principalmente a desarrollo/bienestar y desigualdad/pobreza) que permitan caracterizar la criminalidad en los países considerados, usando como proxy de criminalidad la cantidad de homicidios por cada 100.000 habitantes. Para ello, el análisis consideró un conjunto de variables que la literatura ha asociado con la criminalidad.

Considerando los resultados del dendograma, la partición escogida fue de 4 variables, en donde parte importante de la conformación de los conglomerados puede explicarse por los países disponibles en la muestra, con una alta representación de países que han sido caracterizados por organismos internacionales como economías de altos ingresos. De todas formas, el ejercicio exploratorio propuesto da cuenta que estos países presentan un comportamiento similar en relación con la criminalidad y sus determinantes. Las características de cada conglomerado permiten tensionar lo previsto teóricamente. En particular, resulta interesante reflexionar en torno a las características de los conglomerados de criminalidad media y criminalidad media alta. El primero, se caracteriza por bajos niveles de desarrollo y bienestar junto a altas tasas de pobreza, presentando una cantidad de homicidios intencionales contra-intuitivamente más baja que la que se observa en el conglomerado de países de criminalidad media alta, con mejores indicadores en lo que respecta a bienestar y pobreza. Sin embargo, ambos conglomerados presentan resultados similares en lo que respecta a la proporción de ingresos totales que representa el 10% de la población más rica (34,7% y 31,5% respectivamente). Para el conjunto de países aquí considerados, esta variable podría estar capturando las diferencias en criminalidad.

Asimismo, la excepcionalidad de Sudáfrica, presenta indicadores de desarrollo y bienestar que lo asemejan más al conglomerado de países de desarrollo mediano alto agrupados en el conglomerado de criminalidad media alta pero con indicadores de desigualdad y pobreza más parecidos a los del conglomerado de criminalidad media, pero significativamente peores, alcanzando su peor rendimiento en la participación de ingresos totales del 10% de la población más rica, otro indicio de la relevancia de esa variable para capturar diferencias entre los conglomerados. Finalmente, cabe mencionar un estatus ambiguo de la proporción de población urbana en el análisis. Si bien esta variable presenta diferencias importantes entre los conglomerados, no parece estar señalando diferencias relevantes en lo que a criminalidad se refiere. Además, cabe destacar que la proporción de población urbana más alta se concentra precisamente en el conglomerado de baja criminalidad. Esta evidencia mixta ya se anticipaba al observar las correlaciones, en donde se destacó que su coeficiente de correlación era bajo y no presentaba el signo esperado. Puede tratarse de una variable que no está aportando a la diferenciación de los conglomerados.