Se aplican métodos de análisis de conglomerados: Se analiza los datos de la Tabla 1.9.

datos <- read.table("T1-9(2).DAT")
colnames(datos) <- c("pais","X100","X200","X400","X800","X1500","X3000","X10000")
datos <- datos[,-1]
head(datos)
##    X100  X200  X400 X800 X1500 X3000 X10000
## 1 11.57 22.94 52.50 2.05  4.25  9.19 150.32
## 2 11.12 22.23 48.63 1.98  4.02  8.63 143.51
## 3 11.15 22.70 50.62 1.94  4.05  8.78 154.35
## 4 11.14 22.48 51.45 1.97  4.08  8.82 143.05
## 5 11.46 23.05 53.30 2.07  4.29  9.81 174.18
## 6 11.17 22.60 50.62 1.97  4.17  9.04 147.41

Cálculo de distancias euclidianas.

# Estandarización para evitar sesgos por las escalas
datos_est <- scale(datos)

# Cálculo de distancias euclidianas
distancias <- dist(datos_est, method="euclidean")
round(as.matrix(distancias)[1:5,1:5],2)
##      1    2    3    4    5
## 1 0.00 2.47 2.04 1.80 1.72
## 2 2.47 0.00 1.24 1.17 3.52
## 3 2.04 1.24 0.00 0.87 2.81
## 4 1.80 1.17 0.87 0.00 2.92
## 5 1.72 3.52 2.81 2.92 0.00

En el contexto de los datos podemos observar que las distancias pequeñas representan países con records similare y las distancias grandes representan países con desempeño muy distinto.

Clustering jerárquico (Single linkage y Complete linkage).

#inciso a) Single linkage
hc_single <- hclust(distancias, method="single")
fviz_dend(hc_single, cex=0.7, main="Clustering jerárquico - Single Linkage")

#inciso a) Complete linkage
hc_complete <- hclust(distancias, method="complete")
fviz_dend(hc_complete, cex=0.7, main="Clustering jerárquico - Complete Linkage")

El single linkage nos produce cadenas largas lo que quiere decir que tenemos clusters menos compactos y el complete linkage genera clusters más compactos y equilibrados. Ademas de que se observan grupos de países con niveles similares de records.

Clustering por K-means.

set.seed(123)
k2 <- kmeans(datos_est, centers=2, nstart=25)
k3 <- kmeans(datos_est, centers=3, nstart=25)
k4 <- kmeans(datos_est, centers=4, nstart=25)

fviz_cluster(k3, data=datos_est, geom="point", main="K-means con K=3")

Con K=2, se separan países con mejores marcas vs. rezagados y con K=3 o K=4, aparecen subgrupos más interpretables.
Los resultados son consistentes con el clustering jerárquico.

Comparación entre métodos y visualización comparativa

# Clusters jerárquicos con complete linkage
cut_hc <- cutree(hc_complete, k=3)

# Tabla de contingencia
tabla_comp <- table(Jerarquico=cut_hc, Kmeans=k3$cluster)
tabla_comp
##           Kmeans
## Jerarquico  1  2  3
##          1 13  0 18
##          2 20  0  0
##          3  0  3  0
# Comparación visual
fviz_cluster(list(data=datos_est, cluster=cut_hc), geom="point", main="Clustering jerárquico (k=3)")

fviz_cluster(k3, data=datos_est, geom="point", main="Clustering K-means (k=3)")

Conclusiones

En el análisis de las distancias se mostro similitudes y diferencias entre países y los dendrogramas jerárquicos ofrecen una visión jerárquica de las relaciones.
El método de K-means ofrece particiones claras y complementa la interpretación.
En general, los datos pueden resumirse en 2 a 4 clusters representativos de niveles competitivos distintos.