Vous êtes sur la page 1sur 51

Clustering (Clasificacion No supervisada) II

Edgar Acuna Departamento de Matematicas UPR-Mayaguez

Algoritmo jerrquicos
Estos algoritmos generan sucesiones anidadas de clusters que se pueden visualizar con una estructura de arbol llamado Dendrograma,
En la figura se muestra el dendrograma de las 38 muestras del conjunto Golub obtenido usando la funcin hclust para algoritmo jerarquico
C s r D n ro ra lu te e d g m

55

60

Height 40 45

50

21

29

17

38

35

20

27

8 22

2 14

30

> a=hclust(dist(t(golub))) > plot(a)

30 36

26 16 19

24

25

9 11

5 15

d ob ist(t(g lu )) h st (*, "co p te clu mle ")

6 23

4 7

12 25 34 35 31 32

33 37

13

10

28

18

Dendrogramas
Los dendrogramas son fciles de interpretar pero pueden conducir a falsas conclusiones por las siguientes razones: 1) El dendrograma correspondiente a un conglomerado jerrquico no es nico, puesto que por cada junte de clusters (merge) uno necesita especificar que sub-rbol va a la derecha y cul a la izquierda. Por default la funcin hclust ordena los arboles de tal manera que los conglomerados ms concentrados van a la izquierda. 2) La estructura jerrquica del Dendrograma no representa fielmente las verdaderas distancias entre los objetos distintos del conjunto de datos.

El coeficiente de correlacin cofentico puede ser usado para medir cuan bien la estructura jerrquica del dendrograma representa a las v erdaderas distancias. Se define como la correlacin entre las n(n - 1)/2 pares de dissimilaridades y sus distancias cofenticas del dendrogramas (es la distancia de similiraidad a la cual dos observaciones que aparecen en un mismo cluster fueron consideradas juntas por primera vez). La funcin cophenetic calcula la distancia cofenticas. d1=dist(t(golub)) golubh=hclust(d1, method=ave) d2=cophenetic(golubh) cor(d1,d2) La correlacion cofentica da 0.7606. El dendrogram no es algo confiable

Ejemplo de un dendrograma y sus cortes

treegolub=as.dendrogram(golubh) golubh=cut(treegolub,h=50) > golubh $upper 'dendrogram' with 2 branches and 2 members total, at height 54.29456 $lower $lower[[1]] 'dendrogram' leaf '21', at height 0 $lower[[2]] 'dendrogram' with 2 branches and 37 members total, at height 47.57777 > par(mfrow=c(2,2)) > plot(treegolub) > plot(golubh$upper)

Height 0.00 29 38 21 0.02 0.04 0.06 25 35 45 55

6 23 9 11 10

33 37 30 36 12 25 34 35 28 31 32 3 17

Cluster Dendrogram

dist(t(golub)) hclust (*, "average")

21

> plot(golubh$lower[[1]]) > plot(golubh$lower[[2]])


5 15 26 16 19 13 24 4 7 2 14 18 20 1 27 8 22 0 29 38 33 37 30 36 12 25 34 35 28 31 32 17 3 6 23 10 9 11 2 14 18 20 26 16 19 13 24 5 15 27 1 4 7 8 22 10 20 30 40 Branch 1 0 10 20 30 40 Branch 2 50

Heatmaps.
Son grficas que muestran simultaneamente las agrupaciones en conglomerados de columna y filas. La funcin heatmap permite hacer heatmaps usando un gran nmero de tonalidades de colores. top50=a1$index[1:50] > top50 [1] 829 378 2124 808 2489 394 2670 1009 1995 937 1448 2939 1413 1907 2663 766 717 1778 1042 2702 2198 523 1811 2600 849 1676 2664 848 2761 561 2750 1037 515 2386 2499 894 2714 1141 2752 1883 988 1911 1834 2958 746 1524 2101 1977 2813 792 heatmap(golub[top50,],col=heat.colors(16)) heatmap(golub[top50,],col=topo.colors(256) )

Ejemplo de heatmaps para golub con los top 50 genes

Notar que solo las variables 2 y 3 determinan claramente las 3 clases de iris.

27 8 7 3 23 6 11 9 10 22 24 26 13 15 20 1 4 18 16 19 5 21 14 17 25 12 2 35 38 28 32 29 31 34 33 37 30 36

27 8 7 3 23 6 11 9 10 22 24 26 13 15 20 1 4 18 16 19 5 21 14 17 25 12 2 35 38 28 32 29 31 34 33 37 30 36

43 6 25 19 34 5 40 45 10 11 23 33 9 32 12 17 22 20 30 46 42 16 24 3 14 21 49 27 15 1 7 8 38 37 13 31 18 29 44 2 47 50 48 4 39 35 26 36 41 28

43 6 25 19 34 5 40 45 10 11 23 33 9 32 12 17 22 20 30 46 42 16 24 3 14 21 49 27 15 1 7 8 38 37 13 31 18 29 44 2 47 50 48 4 39 35 26 36 41 28

Algoritmo jerrquico aglomerativo


Suponiendo que tenemos una matriz de datos m x n. Se empieza con m clusters si se desea formar grupos de muestras (filas) o con n clusters si se quiere agrupar las variables (columnas). En cada paso se juntan los clusters mas cercanos usando una medida de distancia entre clusters (linkage) Linkage promedio: promedio de las distancias de las observaciones en cada cluster. Linkage simple: la menor distancia entre las observaciones de cada cluster Linkage completo: la mayor distancia entre las observaciones de cada cluster. Linkage de Ward: se junta el par de grupos que produce la varianza mas pequena entre los grupos juntados.

Ejemplo de Jerarquico Aglomerativo


En este caso usaremos la funcion agnes de la libreria cluster golubagl=agnes(t(golub),metric="euclidean",method="ward") cutree(golubagl,k=2) table(cutree(golubagl,k=2)) 1 2 25 13 table(cutree(golubagl,k=3)) 1 2 3 16 9 13 La funcin plot.agnes permite hacer un plot del dendrograma

Banner of agnes(x = t(golub), metric = "euclidean", method = "ward")

10

20

30

40

50 Height

60

70

80

90

100

Agglomerative Coefficient = 0.65

Dendrogram of agnes(x = t(golub), metric = "euclidean", method = "ward")


100 Height 60 1 8 22 27 4 7 5 15 24 13 20 16 19 26 18 21 2 14 17 3 6 23 9 11 10 12 25 28 31 32 34 35 29 33 37 38 30 36 t(golub) Agglomerative Coefficient = 0.65 20

Mtodos jerrquicos divisivos


Empieza con un solo cluster, que es aquel que contiene atodas las muestras. En cada paso se divide los clusters en dos subgrupos. Son ms lentos de calcular que los jerquicos aglomerativos A continuacion se muestra un ejemplo del mtodo jerarquico divisivo usando la funcin Diana de la librera cluster. golubdiv=diana(t(golub),metric='euclidean') Golubdiv plot(golubdiv,which=2) > table(cutree(golubdiv,k=2)) 1 2 18 20 > table(cutree(golubdiv,k=3)) 1 2 3 17 20 1

Banner of diana(x = t(golub), metric = "euclidean")

62.6 60

55

50

45

40

35

30 Height

25

20

15

10

Divisive Coefficient = 0.42

Dendrogram of diana(x = t(golub), metric = "euclidean")


55

Height

8 22 27 25

18 17 21

40

20

12

29 28 32 31 34 35 30 36

5 15 24 13 16 19 26

t(golub) Divisive Coefficient = 0.42

6 23 9 11 10

4 7

33 37 38

2 14 3

25

Comparacin de mtodos de particionamiento con los mtodos jerrquicos.


Los mtodos de particionamiento tienen la ventaja de que satisfacen un criterio de optimilidad aunque sea aproximadamente. Desventajas: Necesitan un valor inicial del nmero de clusters y toma mucho tiempo obtener los clusters. Por otro lados los mtodos jerrquicos tienen la ventaja que son rpidos de calcular sobre todo el metodo aglomerativo. Desventaja: La rigidez que le da la estructura de rbol ( el llamado factor de anidamiento). Es dificil corregir lo que se hizo antes.

Medidas de validacion de clusters.


Indices Internos. Estadisticas basados en las sumas de cuadrados entre clusters y dentro de clusters. El nmero de clusters K es aquel que maximiza o minimiza uno de estos indices.(Milligan, GW& Cooper, MC). Entre los principales estan el indice de Dunn, el Indice de Davies-Bouldin. Ancho de silueta promedio. Criterio de AIC ( Criterio de Informacin de Akaike) Criterio BIC ( Criterio de Informacin Bayesiano). Usados con clustering basado en modelos de mezclas gaussianas. Determinar el nmero de componentes de la mezcla es lo mismo que determinar el nmero de clusters.

Indice de Dunn (1974)


La idea es identificar los clusters que estan bien compactos y bien separados de los demas. Dada una particion de clusters donde ci representa el i-esimo cluster de la particion, se define el indice de Dunn por

d (ci , c j ) }} Dn = min1in{min1 jin{ max1kn (d ' (ck )

donde d(ci,cj) es la distancia entre los clusters ci, y cj y d'(ck) representa una distancia intracluster del cluster ck, tal como la distancia maxima entre los elementos del cluster. Si el conjunto de datos tiene clusters bien compactos y definidos entonces Dn es grande.El numero optimo de clusters es aquel donde D alcanza su primer maximo local. La libreria fpc tiene una funcion cluster.stats que calcula el indice de Dunn.

dgolub=dist(t(golub)) arbol2=cutree(hclust(dgolub),2) a=cluster.stats(dgolub,arbol2) a$dunn [1] 0.6421666 arbol3=cutree(hclust(dgolub),3) a=cluster.stats(dgolub,arbol3) a$dunn [1] 0.692239 arbol4=cutree(hclust(dgolub),4) a=cluster.stats(dgolub,arbol4) a$dunn [1] 0.6733567

Silhouette plots
Los plots siluetas, (Rousseeuw 1987) pueden ser usados para: Seleccionar el nmero de clusters. Evaluar cuan bien han sido asignados las observaciones en los clusters. El ancho de la silueta (silhouette width) de la i-sima observacin es definida por: sili = (bi - ai)/ max(ai, bi) Donde, ai denota la distancia promedio entre la observacin i y todas las otras que estn en el mismo cluster de i, y bi denota la distancia promedio minima de i a las observaciones que estn en otros clusters. Claramente sili cae en en el intervalo (-1,1).

Caractersticas de los Silhouette plots


Las observaciones con ancho de silueta grande estn bien agrupadas mientras aquellas con ancho de silueta cerca de cero tienden a estar ubicada en el medio de dos clusters. Para un nmero de clusters dado K, el ancho de silueta promedio de la configuracion de conglomerados ser simplemente el promedio de sili sobre todas las observaciones. Es decir,
s= i sili n

Kaufman y Rousseeuw (1990) sugirieron estimar el nmero ptimo de cluster K para el cual el ancho de silueta promedio sea la mayor posible.

Ejemplo de los Silhouette plots


Ejemplo con el conjunto de datos golub y el metodo jerarquico aglomerativo
> agolub=agnes(dist(t(golub)),method=ward) >a=silhouette(cutree(agolub,k=2),daisy(t(golub))) >b=silhouette(cutree(agolub,k=3),daisy(t(golub))) >c=silhouette(cutree(agolub,k=4),daisy(t(golub))) >par(mfrow=c(1,3)) >plot(a,main=) >plot(b,main=) >plot(c,main=) Mirando el plot k=2 clusters es lo recomendado.

Plot siluetas para el clustering de las muestras de Golub

n = 38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

2 clusters C j j : nj | aveiCj si
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

n = 38

3 clusters C j j : nj | aveiCj si
1 2 3 4 5 6 1 : 16 | 0.07 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

n = 38

4 clusters C j j : nj | aveiCj si
1 : 6 | 0.12

2 : 9 | 0.14

1 : 25 | 0.10

2 : 9 | 0.16

3 : 10 | 0.09

2 : 13 | 0.13

3 : 13 | 0.11

4 : 13 | 0.09

0.0

0.2

0.4

0.6

0.8

1.0

0.0

0.2

0.4

0.6

0.8

1.0

0.0

0.2

0.4

0.6

0.8

1.0

Silhouette w idth s i Average silhouette w idth : 0.11

Silhouette w idth s i Average silhouette w idth : 0.11

Silhouette w idth s i Average silhouette w idth : 0.11

Ejemplo de los Silhouette plots


Ejemplo con el conjunto de datos Bupa y el metodo PAM silicom=rep(0,9) for(i in 1:9){ silicom[i]=pam(t(golub),i+1, diss=F,stand=T)$silinfo$avg.width}
0.07

p tsd s e s lo e ilu ta

silicom 0.04 2 0.05

plot(2:10,silicom) plot(2:10,silicom,type="o",xla="clusters", main="plots de siluetas") Aqui tambien salen 2 clusters.

0.06

6 c s rs lute

1 0

. Indices Externos
Supongamos que tenemos dos particiones U y V de n objetos x1, ..., xn: la particin en R grupos U = {u1, ..., uR} y la particin en C grupos V={v1, ...,vC}, por lo general una de ellas conocida de antemano.. Los indices externos de concordancia entre las particiones pueden ser expresados en trmino de una tabla de contingencia con entradas nij que representa el nmero de objetos que estn en ambos clusters ui and vj, i = 1,...,R, j = 1,...,C . Sean
n i . = n ij
j =1 C

n . j = n ij
i =1

que denotan las sumas de filas y columnas de la tabla de contingencia. Consideremos

Z = n
i =1 j =1

2 ij

Consideremos ademas las siguientes cantidades: a: numero de pares objetos que estan en el mismo cluster tanto en U como en V. c: numero de pares de objetos que estan en el mismo cluster en V pero no en U. b: numero de pares de objetos que estan en el mismo cluster en U pero no en V. d: numero de pares de objetos que estan en diferentes clusters tanto en U como en V. Notar que R m1=a+b = ni. numero de pares de objetos en el mismo cluster en U.
i =1
C

m2=a+c= n. j numero de pares de objetos en el mismo cluster en V. 2


j =1

Ejemplo
a= 4, b =2, c=3, d=6, m1=6, m2=7, Z=14

1 3

2 6 U

1 3

2 6 V

Notar que M=a+b+c+d=

n 6 = = 15 2 2

Rand(1971) Jaccard

( z (1 / 2 )( Rand = 1 +

i =1

ni2 .

+ n.2j ))
j =1

n 2

c 00 + c11 n 2

Jac=

(z n)

n.2j Z n
i=1

ni2 + .

c11 c01+ c10 + c11

j=1

Fowlkes and Mallows

FM =

(1 / 2)( z n) c = 11 R n C n m1m2 [ i. . j ]1/ 2 i =1 2 j =1 2

Un valor de Rand, Jaccard y FM cercano a 1 indica un buen agrupamiento.

La medida de Hubert y Arabie (1985)


Sean las variables aleatorias: X(i,j)=1 si los objetos i y j caen en el mismo cluster de la particion U e igual a 0 en otro caso. Y(i,j)=1 si los objetos i y j caen en el mismo cluster de la particion V e igual a 0 en otro caso. Se define la medida de Hubert como:

1 = X ( i , j )Y ( i , j ) M

Para obtener valores de entre -1 y 1 se prefiere normalizarlo y se obtiene

= [(1/ M ) ( X (i, j ) X )(Y (i, j ) Y )] / S X SY


Que es equivalente a:

H = [ X (i, j )Y (i, j ) / M XY ] / S X SY

Pero, usando el hecho que X y Y son binomiales, se tiene que C n. J R ni. ( ) ( ) J =1 2 i =1 2 Y = X = M M Que son las probabilidades de que los objetos i y j caigan en los mismos clusters de las particiones U y V respectivamente

Similarmente,
R n ni . i. i =1 2 (1 i =1 2 ) S X = X (1 X ) = M M R

C n n. j .j j =1 2 (1 j =1 2 ) S Y = Y (1 Y ) = M M C

Finalmente,
nij R C 2 R C X (i, j )Y (i, j ) 2 nij nij Z n i =1 j =1 i =1 j =1 = i=1 j =1 = = M M 2M 2M
R C

Sustituyendo, en la forma de normalizada se tiene


H =
R n C n .5 * M ( z n ) i . . j i =1 2 j =1 2 R n C n R n C n i . . j ( M i . )( M . j ) i =1 i =1 j =1 2 j =1 2 2 2

Ahora usando las identidades

n i. a +b = i =1 2
R

n. j a + c = j =1 2
C

y a= (z-n)/2, se tiene la siguiente formula simplificada de H

Ma (a + b)(a + c) H= (a + b)(a + c)(M (a + b))(M (a + c))

aggolub=agnes(dist(t(golub)),method="ward") a=cutree(aggolub,k=2) mexter(golub.cl+1,a)


table(a,golub.cl+1) a 1 2 1 25 0 2 2 11 $rand [1] 0.8975818 $jaccard [1] 0.8317757 $fandm [1] 0.908743 $hubert [1] 0.7953285

> agbupa=agnes(dist(bupa[,1:6]),method="complete") > c=cutree(agbupa,k=2) > mexter(bupa[,7],c) $rand [1] 0.5103809 $jaccard [1] 0.5091815 $fandm [1] 0.7124241 $hubert [1] -0.01026507 > table(c) c 1 2 344 1

Otras medidas
FOM=Figure of Merit (Yeung and Ruzzo,2001) The Gap Statistics (Tibshirani,2000). Clest (Dudoit & Fridlyand, 2002)

Algoritmo Clest (Dudoit & Fridlyand, 2002).


Estima el nmero de conglomerados basado en la precision de la prediccion. Para cada nmero de clusters k, se divide al azar B veces el conjunto de datos original en dos conjuntos que no se superponen. Uno de ellos Lb forma la muestra de entrenamiento y el otro, Tb forma la muestra de prueba , b = 1, . . . , B. -Aplicar el algoritmo de conglomerados (se recomienda el PAM) a las observaciones en el conjunto de entrenamiento Lb. Construir un clasificador ( puede ser LDA, k-nn, CART, etc) usando las etiquetas obtenidas del mtodo de conglomerados. -Aplicar el clasificador al conjunto de prueba Tb. -Aplicar el algoritmo de conglomerados al conjunto de prueba Tb.

-Calcular un score sk,b comparando las etiquetas del conjunto de prueba obtenidas por conglomerados y por prediccin del clasificador. Estos scores se obtienen aplicando indices externos como RAND, Jaccard o Fowkles y Mallows (FM) -El score de similaridad para los k clusters es la mediana de los B scores de similaridad tk = median(sk,1, , sk,B). -El nmero de clusters K es estimado comparando el score observado tk con su valor esperado asumiendo cierta distribucin de referencia.

El programa Machaon (2004)


Nadia.Bolshakova (CS Department, Trinity College, UK) Cluster Validty Tool for gene Expression data

Clustering basado en modelos


Desde hace tiempo, investigadores, se han dado cuenta que analisis de conglomerados puede ser llevado a cabo usando modelos de probabildad. Con estos modelos se esta tratando de ver cuando es que un cierto metodo de clustering funciona bien. Se ha demostrado que algunos de los metodos heuristicos de hacer cpnglomerados son simplemente metodos de estimacion aproximados de modelos de probabilidad. Por ejemplo, el metodo de k-means y el metodo de Ward son equivalentes a conocidos metodos para maximizar aproximadamente la clasificacion usando una normal multivariada cuando la matriz de covarianza es la misma para cada componente y proporcional a la matriz identidad.
PERU 2009 Mineria de Datos Edgar Acuna 40

Clustering basado en mezclas finitas


Modelos de mezcla finitas han sido propuestos y estudiado a menudo en el contexto de clasificacion (Wolfe, 1963, 185,1967,1970; Edwards y Cavalli-Sforza 1965; Day 1969; Scott y Symons 1971; Duda y Hart 1973; Binder 1978). In modelos de mezclas finita cada componente de la distribucion de probabilidad corresponde a un cluster. El problema de determinar el numero de componentes puede ser reformulado como un problema de seleccion de modelos Los outliers son tratados mediante la adicion de una o mas componente representando una distribucion distinta para los datos anomalos.

PERU 2009 Mineria de Datos Edgar Acuna

41

Clustering basado en Mezclas finitas


La funcion de likelihood de un modelo de mezcla con G componentes dado que se observo el la muestra aleatoria y1, y2, yn de la varible aleatoria y esta definida por

L ( 1 ,..... G ; 1 ,.... G / y ) = k f k ( y i / k )
i =1 k =1

Donde fk y k son las funciones de densidad y los parametros de la kesima componente de la muestra y k es la probabilidad de que una observacion pertenezca a la k-esima componente . Los k son no negativos y su suma debe dar 1. Por lo general fk es una densidad normal multivariada k parametrizada por su media y matriz de covarianza.

PERU 2009 Mineria de Datos Edgar Acuna

42

La distribucion Normal Multivariada

1 exp( ( y i k ) T k 1 ( y i k )) 2 k ( yi / k , k ) det( 2 k )

PERU 2009 Mineria de Datos Edgar Acuna

43

Clustering basado en mezclas Gaussianas


Las caracteristicas geometricas( forma, volumen, orientacion) de los clusters son determinados por las covarianzas k, que a su vez pueden ser parametrizadas para imponer restricciones entre clusters. Asi, si se considera k=I, entonces todos los clusters son esfericos y del mismo tamano, si k= entonces todos los clusters tienen la misma geometria pero no son necesariamente esfericos. En el primer caso se necesita solo un parametro y en el segundo d(d+1)/2 parametros.

PERU 2009 Mineria de Datos Edgar Acuna

44

El criterio BIC (Bayesian Information Criiterio) para seleecionar el mejor modelo


2 log p ( D / M k ) 2 log p ( D / k , M k ) v k log( n ) = BIC k
donde k es el numero de parametros independientes a ser estimado en el modelo MK (Schwarz 1978). El mejor modelo sera aquel tiene el BIC ma grande

PERU 2009 Mineria de Datos Edgar Acuna

45

Uso de Mclust
Los siguientes modelos son comparados en 'Mclust': "EII": spherical, equal volume "VII": spherical, unequal volume "EEI": diagonal, equal volume, equal shape "VEI": diagonal, varying volume, equal shape "EVI": diagonal, equal volume, varying shape "VVI": diagonal, varying volume, varying shape "EEE": ellipsoidal, equal volume, shape, and orientation EEV": ellipsoidal, equal volume and equal shape "VEV": ellipsoidal, equal shape "VVV": ellipsoidal, varying volume, shape, and orientation El comportamiento de los modelos dependen de la descomposicion espectral de las matrices de covarianzas

PERU 2009 Mineria de Datos Edgar Acuna

46

> a=Mclust(bupa[,1:6],1:10) >a best model: diagonal, varying volume and shape with 4 components > a$bic [1] -14867.11 > table(a$class) 1 2 3 4 135 152 53 5 > a$parameters$pro [1] 0.40769889 0.41884788 0.15928831 0.01416492

PERU 2009 Mineria de Datos Edgar Acuna

47

> a$parameters$mean [,1] [,2] [,3] [,4] V1 90.429894 89.313426 91.110518 96.69474 V2 73.818404 64.056493 73.900558 82.77228 V3 29.045119 20.299498 57.676037 61.74509 V4 24.067698 19.222119 38.203606 49.03473 V5 35.667890 16.089920 88.777391 202.03921 V6 3.700042 2.163306 5.584584 10.65408

PERU 2009 Mineria de Datos Edgar Acuna

48

> a$BIC EII VII 1 -18303.43 -18303.43 2 -17202.80 -16598.74 3 -16838.22 -16197.67 4 -16678.34 -16008.67 5 -16554.47 -15886.13 6 -16468.54 -15783.68 7 -16466.85 -15776.61 8 -16470.31 -15760.68 9 -16097.65 -15749.74 10 -16090.24 -15726.55 plot(a,bupa[,1:6])

EEI -15983.15 -15510.36 -15409.54 -15408.63 -15445.39 -15158.72 -15194.85 -15183.71 -15222.67 -15199.41

VEI -15983.15 -15132.42 -14992.76 -14940.84 -14957.04 -14974.77 -14976.11 -15009.91 -15033.18 -15039.04

EVI VVI EEE EEV VEV VVV -15983.15 -15983.15 -15568.76 -15568.76 -15568.76 -15568.76 -15321.70 -15001.33 -15441.96 -15297.84 -14983.84 -14964.50 -15209.54 -15040.37 -15318.12 -15277.09 -15036.85 NA -15185.15 -14867.11 -15314.72 -15309.64 -15097.61 NA -15161.28 -14894.18 -15245.00 -15330.92 -15155.63 NA -15181.85 NA -15154.37 -15316.74 -15193.14 NA NA NA -15172.70 -15406.73 -15178.47 NA NA NA -15207.83 -15539.95 -15316.13 NA NA NA -15208.77 -15566.15 -15350.26 NA NA NA -15230.21 -15620.28 -15527.11 NA

PERU 2009 Mineria de Datos Edgar Acuna

49

B IC

-1 0 0 70

-1 0 0 60

-1 0 0 50

EII VII EEI VEI EVI 2 4 6 8

VV EE EE VE VV 10

-1 0 0 80

number of components

20

60

100

20

60

V1

2 6 10 0 0 0

V2

V3

6 0

2 0

V4
20 5 70 90 0 50 100 0 100 250 0 10 0

V5

5 10 0 0

7 0

9 0