viernes, 24 de mayo de 2024

AnĂ¡lisis de cluster

Creando grupos y tipologĂ­as

La conformaciĂ³n de grupos a partir de atributos especĂ­ficos es una necesidad recurrente en diversos Ă¡mbitos, especialmente en el diseño e implementaciĂ³n de polĂ­ticas pĂºblicas. Si bien las taxonomĂ­as pueden servir como herramientas auxiliares en esta tarea, su aplicaciĂ³n manual no siempre es viable, particularmente cuando se manejan grandes volĂºmenes de datos. En este contexto, el anĂ¡lisis de conglomerados (clustering/cluster) emerge como una herramienta valiosa para automatizar la agrupaciĂ³n de individuos o entidades con base en caracterĂ­sticas compartidas. Esta tĂ©cnica permite identificar patrones y estructuras subyacentes en los datos, facilitando la segmentaciĂ³n de la poblaciĂ³n en grupos homogĂ©neos. En sĂ­ntesis, el anĂ¡lisis de conglomerados se presenta como una herramienta poderosa para la agrupaciĂ³n de individuos o entidades con base en caracterĂ­sticas compartidas, superando las limitaciones de la agrupaciĂ³n manual basada en taxonomĂ­as predefinidas. Su aplicaciĂ³n resulta particularmente Ăºtil en el contexto de la implementaciĂ³n de polĂ­ticas pĂºblicas, donde la segmentaciĂ³n de la poblaciĂ³n en grupos homogĂ©neos es crucial para la asignaciĂ³n eficiente de recursos y la evaluaciĂ³n del impacto de las intervenciones. Nos permite:

  • obtener grupos homogĂ©neos respecto a la(s) varible(s) utilizada(s) para generar la caracterizaciĂ³n, y, a la vez
  • grupos heterogĂ©neos en tanto que son distintos entre ellos, de acuerdo con esa(s) variable(s) empleada(s)

AsĂ­, en un municipio y tomando en consideraciĂ³n la topografĂ­a, los habitantes, y otras caracterĂ­stica, habrĂ¡ parroquias que sean mĂ¡s parecidas entre sĂ­ -grupos homogĂ©neos- y, al mismo tiempo, muy diferentes de otras parroquias -grupos heterogĂ©neos.

Procedimiento

  • Seleccionar la muestra

  • Seleccionar las variables

  • Transformar, de ser necesario las variables

  • Seleccionar las medidas que permitirĂ¡n la creaciĂ³n de grupos homogĂ©neos y heterogĂ©neos

  • Seleccionar y aplicar los criterios de agrupaciĂ³n

  • Seleccionar el nĂºmero de grupos

La muestra se elige dependiendo de los objetivos del anĂ¡lisis. Ejemplo:

  • encontrar Ă¡reas homogĂ©neas en barrio/urbanizaciĂ³n/parroquia/municipio: zonas en las que las caracterĂ­sticas de las viviendas sean comunes, para analizar si,
  • las principales caracterĂ­sticas de las personas que habitan esas viviendas tambiĂ©n son similares

Un estudio de este tipo debe incluir caracterĂ­sticas de la vivienda y datos sociodemogrĂ¡fico de las personas.

Las variables deben ser relevantes. De lo contrario, se obtendrĂ¡n individuo atĂ­picos. Una serie de variables tiende a revelar una estructura especĂ­fica. Y suele haber una estructura que se manifiesta en un grupo de variable. Si abundan los casos atĂ­picos, se pierde o no se logra visualizar la estructura.

Si las variables se expresan en escalas diferentes, es necesario homogeneizarlas.

Dependiendo del tipo de variable (intervalo, razĂ³n, ordinal, nominal), se eligen las distancias: euclĂ­dea, manhathan, entre otras. Y para formar los grupos, existen tambiĂ©n diversos procedimientos.

AplicaciĂ³n

Para crear los clusters, lo primero que necesitamos es crear la distancia. La distancia nos permitirĂ¡ establecer la similitud y la diferencia entre los elementos del marco de datos. Usemos la data USArrests. Este marco de datos viene precargada en R

# empleamos la base de datos sobre tasa de crimenes violentos en los Estados Unidos, por cada 100 mil habitantes
head(USArrests)
##            Murder Assault UrbanPop Rape
## Alabama      13.2     236       58 21.2
## Alaska       10.0     263       48 44.5
## Arizona       8.1     294       80 31.0
## Arkansas      8.8     190       50 19.5
## California    9.0     276       91 40.6
## Colorado      7.9     204       78 38.7
#copiamos este marco de dato y colocamos los nombres en castellano
arrestos <-USArrests

names(arrestos)<-c('asesinato', 'asalto', 'pobUrbana', 'violacion')
names(arrestos)
## [1] "asesinato" "asalto"    "pobUrbana" "violacion"

Se crea primero la distancia con la funciĂ³n dist()

# se debe crear primero la distancia. Necesitamos un method para crear las distancias. Usaremos el metodo por defecto: distancia euclidea


arrestosDist <- dist(arrestos)

# creamos ahora la aglomeracion de los elementos. Empleamos tambien el metodo por defecto

arrestosHclust <- hclust(arrestosDist)

Tenemos todos los elementos necesarios para crear el cluster. Podemos ahora crear el grĂ¡fico, el dendrograma

plot(arrestosHclust)

De acuerdo con el grĂ¡fico, existen marcadas diferencias entre Florida y North Carolina con North Dakota y Vermont. En forma intuitiva sabemos que estos grupos representan valores opuestos. Adicionalmente, sabemos que los grupos centrales se diferencia entre sĂ­ por su proximidad o lejanĂ­a de estos dos grupos extremos. Para facilitar la visualizacion del numero de grupos desedos, podemos emplear la funcion rect.hclust. Vamos a pedir 5 grupos

plot(arrestosHclust)

rect.hclust(arrestosHclust, 5)

Cada grupo es homogĂ©neo en su interior y heterogĂ©neo con respecto al resto de los grupos. AquĂ­ hemos pedido la identificaciĂ³n de 5 grupos. NĂ³tese que Florida y North Carolina tienen caracterĂ­sticas tan particulares, que esas dos observaciones forman un grupo.

Podemos extraer los diferentes grupos, con lo que podrĂ­amos elaborar un grĂ¡fico distintos, por ejemplo

# Grupos

grupos <-cutree(arrestosHclust, 5)

# podemos obtener el numero de casos en cada cluster
table(grupos)
## grupos
##  1  2  3  4  5 
## 14 14 10  2 10

El primero y segundo grupo contienen 14 observaciones; el tercero y el quinto, 10, en tanto que el grupo 4 contiene dos informaciones.

arrestosHclust
## 
## Call:
## hclust(d = arrestosDist)
## 
## Cluster method   : complete 
## Distance         : euclidean 
## Number of objects: 50

Elsiguiente paso consiste en enteder las caracterĂ­sticas de estos subgrupos e incluso proporcionarles un nombre de acuerdo con los aspectos sobresaliente en cada uno.

No hay comentarios.: