Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clasificación
Clasificación iterativa
Clasificación jerárquica
Combinando técnicas multivariantes
Manos a la obra
Referencias
En algunos casos interesará que el resultado sea una partición de los objetos en k grupos de forma
que cada objeto pertenezca solo a uno de los grupos. Estas técnicas se conocen como no
jerárquicas.
En otras ocasiones interesará establecer una jerarquía en la estructura de relaciones entre los
objetos, produciendo, a posteriori, distintas particiones en función del grado de similitud entre
objetos. Estas son técnicas de clasificación jerárquica.
Puesto que estas técnicas sirven para asignar a los objetos a diferentes grupos, este tipo de
técnicas también la puedes encontrar bajo la denominación de análisis de conglomerados o
clustering.
Clasificación iterativa
Cómo se crean los grupos
El algoritmos más conocido y utilizado —aunque no el único— es K-medias, Kmeans en inglés.
Su fundamento es el siguiente:
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 1/22
7/2/2021 Análisis multivariante. Clasificación
Se eligen de forma aleatoria una serie de puntos, que pueden pertenecer o no al conjunto de
datos. Tantos puntos como grupos — clusters —. Estos puntos actúan como centroides. Serán el
“centro del universo” de esa clase en esa iteración.
A continuación se calcula nuevamente los centroides, esta vez como el punto medio de cada clase.
Es decir, se calcula la distancia media entre todos los puntos pertenecientes a una clase y se vuelve
a asignar las observaciones al centroide más cercano —al nuevo centroide—.
Esto se repetirá hasta que haya convergencia, lo que quiere decir que ya no habrá nuevas
reasignaciones o hasta que se alcance el máximo de iteraciones fijadas, generando así una
clasificación de las observaciones en grupos homogéneos.
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 2/22
7/2/2021 Análisis multivariante. Clasificación
El algoritmo de k-medias converge en un óptimo local, eso significa que el resultado que
obtengamos no tiene por que ser el más óptimo. Si cambiamos los centroides de origen muy
posiblemente obtendremos diferentes resultados. Por tanto la forma en que se inicializan los
centroides es crítica, y aunque no entremos en ello por quedar fuera del alcance de este curso hay
métodos como kmeans++ para optimizar esto.
En el siguiente enlace hay un vídeo muy ilustrativo de cómo funciona Kmeans, por si queda alguna
duda.
Coge el código de este chunk y ejecútalo en tu Rstudio. Recuerda que tienes que tener cargada la
librería animation
# Preparar datos
data ( iris )
mydata <- iris[ , -5 ]
head( mydata )
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 3/22
7/2/2021 Análisis multivariante. Clasificación
Kmeans
Original 1 2 3
setosa 50 0 0
versicolor 0 48 2
virginica 0 14 36
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 4/22
7/2/2021 Análisis multivariante. Clasificación
centro
(vector de
kmeans(X, k)
medias)
clusters|grupoalcualhasidoclasif icadocadaindividuo||kmeans(X, k) centers
de cada
grupo
suma de
kmeans(X, k)
cuadrados
withinss|sumadecuadradosdentrodecadagrupo||kmeans(X, k) totss
total
suma de
kmeans(X, k) cuadrados
tot. withinss|sumadecuadradostotaldentro||kmeans(X, k) betweenss entre
grupos
tamaño
kmeans(X, k)$size de los
grupos
Determinar número de grupos
Tiene varios métodos, algunos sugieren número de grupos y en otros hay que deducirlo de la
gráfica
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 5/22
7/2/2021 Análisis multivariante. Clasificación
El paquete NbClust
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 6/22
7/2/2021 Análisis multivariante. Clasificación
Utiliza 30 índices para decidir el número de grupos. El número de grupos propuesto por más
índices será —teóricamente— el óptimo.
*** : The Hubert index is a graphical method of determining the number of clust
In the plot of Hubert index, we seek a significant knee that co
significant increase of the value of the measure i.e the signif
index second differences plot.
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 7/22
7/2/2021 Análisis multivariante. Clasificación
*******************************************************************
* Among all indices:
* 11 proposed 2 as the best number of clusters
* 11 proposed 3 as the best number of clusters
* 1 proposed 8 as the best number of clusters
* 1 proposed 10 as the best number of clusters
*******************************************************************
fviz_nbclust(nb)
Conclusion
=========================
* According to the majority rule, the best number of clusters is 2 .
Otras funciones
K-medoids: la funcion pam
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 8/22
7/2/2021 Análisis multivariante. Clasificación
Es más robusto, menos sensible a los outliers, puede usar matrices con disimilaridades no
euclideas. Los medioides sería algo parecido, aunque no son las medianas.
Pam
Original 1 2 3
setosa 50 0 0
versicolor 0 48 2
virginica 0 14 36
Puede ejecutarse sobre matriz de datos o distancias igual que pam() , pero según los autores da
mejores resultados con grandes conjuntos de datos.
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 9/22
7/2/2021 Análisis multivariante. Clasificación
Clara
Original 1 2 3
setosa 50 0 0
versicolor 0 3 47
virginica 0 39 11
Se utiliza la función Silhouette para determina cómo de bueno o de homogéneo es cada cluster
formado.
grupo, y b es la menor distancia media desde esa observación a los individuos de los otros grupos,
i
bi − ai
Silhouettei =
max(ai , bi )
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 10/22
7/2/2021 Análisis multivariante. Clasificación
Representación 3d
Colores por grupos
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 11/22
7/2/2021 Análisis multivariante. Clasificación
Clasificación jerárquica
Cómo se crea la jerarquía
Se crea una estructura jerárquica basada en las distancias entre individuos
Divisiva: todas las observaciones están en el mismo grupo y en cada iteración se van
dividiendo los grupos.
ward
Este criterio de agrupación mezclará aquel par de grupos que lleven a un incremento mínimo de la
varianza del cluster después de ser mezclado.
single
Se mezclarán grupos con la mínima distancia entre los vecinos más próximos
complete
Se mezclarán grupos con la mínima distancia entre los vecinos más alejados
Sepal.LengthSepal.Width
1 5.1 3.5
2 4.9 3.0
3 4.7 3.2
4 4.6 3.1
Cómo funciona: iter 1
1 2 3
2 0.5385165
3 0.5000000 0.2828427
4 0.6403124 0.3162278 0.1414214
1 2
2 0.5385165
3-4 0.5700877 0.2915476
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 13/22
7/2/2021 Análisis multivariante. Clasificación
1
3-4-2 0.5350234
Resultado
Dendrograma clásico
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 14/22
7/2/2021 Análisis multivariante. Clasificación
Dendrograma personalizado
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 15/22
7/2/2021 Análisis multivariante. Clasificación
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 16/22
7/2/2021 Análisis multivariante. Clasificación
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 17/22
7/2/2021 Análisis multivariante. Clasificación
PCA
Raw 1 2 3
1 0 28 0
2 31 0 15
3 2 2 20
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 18/22
7/2/2021 Análisis multivariante. Clasificación
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 19/22
7/2/2021 Análisis multivariante. Clasificación
PCA
Raw 1 2 3
1 16 27 1
2 1 0 33
3 19 0 1
Factominer en acción
La función HCPC
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 20/22
7/2/2021 Análisis multivariante. Clasificación
Manos a la obra
En esta ocasión, vas a hacer un ejercicio de clasificación iterativa, con los datos biom2003.dat que
ya hemos utilizado en otros módulos. Verás si hay diferencia entre normalizar y no normalizar los
datos. Finalmente harás una clasificación jerárquica con los mismos datos y comprobarás los
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 21/22
7/2/2021 Análisis multivariante. Clasificación
Referencias
El cuarto capítulo del libro de cabecera de FactoMineR trata sobre los métodos explicados
en este módulo (visitar (https://www.crcpress.com/Exploratory-Multivariate-Analysis-by-
Example-Using-R-Second-Edition/Husson-Le-Pages/p/book/9781138196346?tab=rev)).
Un blog sobre clustering, y otros temas estadísticos de interés por Kassambara, autor de
diversos tutoriales y libros sobre análisis multivariante:
Cluster analysis in R: Practical Guide (https://www.datanovia.com/en/blog/cluster-
analysis-in-r-practical-guide/).
Types of Clustering Methods: Overview and Quick Start R Code
(https://www.datanovia.com/en/blog/types-of-clustering-methods-overview-and-
quick-start-r-code/).
Clustering Example: 4 Steps You Should Know
(https://www.datanovia.com/en/blog/clustering-example-4-steps-you-should-
know/).
Cluster Analysis in R Simplified and Enhanced
(https://www.datanovia.com/en/blog/cluster-analysis-in-r-simplified-and-
enhanced/).
Mucho más en STHDA (http://www.sthda.com/english/) en el apartado Analyze + clustering.
ares.inf.um.es/00Rteam/pub/mamutCola/modulo6.html 22/22