Scheda 6: cluster analysis
Transcript
Scheda 6: cluster analysis
Matematica e statistica: dai dati ai modelli alle scelte – www.dima.unige/pls_statistica Responsabili scientifici M.P. Rogantin e E. Sasso (Dipartimento di Matematica Università di Genova) STATISTICA DESCRITTIVA - SCHEDA N. 6 CLUSTER ANALYSIS La statistica multivariata Nelle schede precedenti abbiamo visto come si rappresentano e si analizzano una o due variabili alla volta: questo tipo di analisi statistiche sono dette di tipo univariato e bivariato. Spesso però si ha a che fare con insiemi di dati che riguardano un numero maggiore di variabili; in questi casi le prime analisi saranno comunque univariate e bivariate, ma è interessate anche poter studiare eventuali legami fra le variabili tutte insieme. La principale difficoltà delle analisi multivariate è quella di rappresentare graficamente i dati; in presenza di due variabili abbiamo rappresentato le unità sperimentali con punti nel piano: le coordinate di un punto sono i valori delle due variabili rilevate su quella unità. Con tre variabili è ancora possibile una tale rappresentazione nello spazio, ma la sua visualizzazione su un foglio (piano) non è univoca. Le tecniche di analisi multivariata si basano su una generalizzazione e astrazione della rappresentazione dei dati tramite punti in uno spazio a molte dimensioni. A ciascuna unità sperimentale è quindi associato un punto con molte coordinate. Indichiamo con p il numero di variabili da analizzare; due punti x e y hanno coordinate: x = ( x 1 , x 2 , … , x p ) e y = (y 1 , y 2 , … , y p ) . Da un punto di vista matematico questi punti si trattato allo stesso modo dei punti di un piano. esempio la distanza euclidea fra i due punti è: d (x , y ) = p ∑(x k k =1 − yk ) Ad 2 ESEMPIO Consideriamo il seguente insieme di dati, che si riferisce ad un rilevamento ISTAT sui servizi sanitari nelle regioni italiane (i dati sono del 1998). Le variabili su cui effettuare l'analisi sono: il numero di medici per 10.000 abitanti; il numero di posti letto ospedalieri per 10.000 abitanti; il numero di pediatri per 10.000 abitanti di età inferiore ai 14 anni; il numero annuo di interventi di pronto soccorso per 1.000 abitanti; la percentuale di persone che si sono dichiarate soddisfatte dell'assistenza medica ospedaliera. 1 I dati sono riportati nella tabella a fianco. In questo caso le unità sperimentali, cioè i punti, sono le regioni e le variabili sono 5. Ad esempio il Piemonte ha coordinate: (8.47, 5.0, 8.38, 413.9, 48.5) E la Valle d’Aosta ha coordinate: (8.60, 4.2, 8.68, 298.2, 35.5) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Regione medici posti letto pediatri interv PS soddisfaz Piemonte Valle d'Aosta Lombardia Trent-Alto Adige Veneto Friuli-Ven. Giulia Liguria Emilia-Romagna Toscana Umbria Marche Lazio Abruzzo Molise Campania Puglia Basilicata Calabria Sicilia Sardegna 8.47 8.60 8.18 6.13 7.99 8.84 8.89 8.29 8.73 9.97 8.36 9.19 8.04 8.44 7.69 7.97 8.49 8.34 7.84 7.79 8.38 8.68 7.80 6.86 8.46 7.40 10.57 10.54 9.64 11.33 9.01 9.84 8.87 7.21 5.88 8.16 6.70 7.79 9.07 8.29 48.5 35.5 48.5 56.8 61.5 51.8 44.6 50.6 43.3 41.8 50.1 32.6 43.3 27.5 37.2 17.7 34.3 26.2 35.7 25.7 5.0 4.2 5.5 6.2 5.3 5.7 5.6 5.4 4.9 4.3 5.7 6.5 6.5 5.3 4.7 5.2 4.4 4.9 4.2 5.3 413.9 298.2 386.6 423.6 454.3 393.4 399.6 387.6 325.3 393.4 408.8 436.2 515.5 410.2 410.5 358.7 338.2 349.4 439.5 264.0 La distanza fra le prime due regioni è quindi: (8.47 - 8.60)2 + (5.0 - 4.2)2 + (8.38 - 8.68)2 + (413.9 - 298.2)2 + (48.5 - 35.5)2 = 116.431 Prima di inizare l’analisi multivariata è opportuno trattare i dati da un punti di vista univariato e bivariato, tramite indici e rappresentazioni grafiche che già conosciamo: Variable medici posti letto pediatri interv PS soddisfaz N 20 20 20 20 20 Mean 8.312 5.240 8.524 390.3 40.66 StDev 0.741 0.692 1.398 56.8 11.38 Minimum 6.130 4.200 5.880 264.0 17.70 Q1 7.975 4.750 7.498 351.7 33.03 Matrice di correlazione: medici PS postiletto -0.236 pediatri 0.592 interv PS -0.113 soddisfaz -0.142 0.446 postil. Ped. 0.027 0.486 0.284 interv 0.065 0.128 Il grafico a fianco viene anche detto matrix plot e consiste in tutte le coppie di grafici bivariati fra le variabili. 2 Median 8.350 5.300 8.420 396.5 42.55 Q3 Maximum 8.698 9.970 5.675 6.500 9.498 11.330 421.2 515.5 49.70 61.50 La cluster analysis o l’analisi di aggregazione In questa scheda vedremo una delle principali e più semplici tecniche di analisi descrittiva multivariata: la cluster analysis o analisi di aggregazione. Lo scopo della cluster analysis è quello di raggruppare le unità sperimentali in classi secondo criteri di similarità, cioè determinare un certo numero di classi in modo tale che le osservazioni siano il più possibile omogenee all'interno delle classi ed il più possibile disomogenee tra le diverse classi. Il concetto di omogeneità viene specificato in termini di distanza ed esistono diversi criteri che saranno chiariti in seguito. ESEMPIO – continua Applicando un metodo di aggregazione che preciseremo in seguito si individuano tre classi, che corrispondono a: - Piemonte, Lombardia, Trentino A. A., Veneto, Friuli V. G., Marche, Lazio, Abruzzo - Valle d'Aosta, Liguria, Emilia-Romagna, Toscana, Umbria - Molise, Campania, Puglia, Basilicata, Calabria, Sicilia, Sardegna Come sono stati aggregati i punti? Per dare un significato alle tre classi osserviamo le medie delle variabili nelle tre classi: classe N medici postiletto pediatri 1 2 3 8 5 7 8.150 8.896 8.080 5.800 4.880 4.857 8.328 10.152 7.586 49.14 43.16 29.19 6.20 Sicilia Sardegna Campania Basilicata Emilia-Romagna Umbria Molise Puglia Calabria Toscana Liguria A bruzzo Trent-A lto A d. Valle d'A osta Piemonte 0.00 Veneto Lazio 3.10 Marche Lombardia Friuli-Ven. Giul. Una rappresentazione grafica di questo raggruppamento in classi riportata a fianco. Vedremo in seguito come si costruisce. 429.0 360.8 367.2 9.30 Distance Osservando tali medie si può dire che nella terza classe si trovano quelle regioni che hanno valori bassi per tutte le variabili, soprattutto per la soddisfazione, mentre le regioni della seconda classe sono caratterizzate da un alto numero di pediatri e parzialmente di medici. interv PS soddisfaz Per poter operare delle aggregazioni fra le unità sperimentali, è necessario in primo luogo precisare alcune questioni relative alle distanze, in particolare alle distanze fra classi di punti. Inizialmente prenderemo in considerazione un semplice esempio con 9 punti e 2 variabili X e Y in quanto nel caso di due variabili è possibile visualizzare i punti con un grafico bidimensionale; ci serviremo di questo esempio per capire come funzionano i metodi di aggregazione dei punti. 3 ESEMPIO con 9 punti. Consideriamo i seguenti dati: 70 Qui a fianco è riportata la matrice dei quadrati delle distanze euclidee fra i punti (è più comodo usare i quadrati delle distanze). Y 23 20 27 26 21 35 52 64 69 60 50 Y 1 2 3 4 5 6 7 8 9 X 12 25 16 81 55 70 18 48 51 40 30 20 10 1 2 1 0 2 178 3 32 130 3 4 5 30 6 40 7 50 X 60 8 70 80 90 9 178 32 4770 1853 3508 877 2977 3637 0 130 3172 901 2250 1073 2465 3077 0 4226 1557 2980 629 2393 2989 4 4770 3172 4226 0 5 1853 901 1557 701 701 202 4645 2533 2749 0 6 3508 2250 2980 202 421 7 20 421 2330 1898 2320 0 2993 1325 1517 877 1073 629 4645 2330 2993 0 1044 1378 8 2977 2465 2393 2533 1898 1325 1044 0 34 9 3637 3077 2989 2749 2320 1517 1378 34 0 In questa scheda vedremo alcuni metodi di aggregazione gerarchica fra punti o classi basati sulla distanza. Tali metodi operano essenzialmente nello stesso modo, procedendo sequenzialmente dallo stadio in cui ciascun punto è considerato una singola classe fino allo stadio finale in cui c'è una sola classe. Ad ogni passo il numero delle classi è ridotto di uno per l'aggregazione delle due classi “più vicine” fra loro. Poiché ad ogni passo le classi sono ottenute dalla fusione di due classi del passo precedente, questi metodi conducono ad una struttura gerarchica per i punti, che può essere visualizzata con un diagramma ad albero, chiamato dendogramma. In seguito vedremo un modo più preciso per costruire il dendogramma. 4 Distanza fra classi Come definiresti la distanza fra due classi di punti? Prova a fare delle ipotesi per il semplice esempio a fianco. In genere la distanza fra classi viene definita in due passi: prima si definisce la distanza fra un punto e una classe formata da due punti; successivamente si definisce la distanza fra due classi. In seguito denoteremo con “classe” anche una classe formata da un singolo punto. Indichiamo con: - x, y, z, ... , xi, xj, ... i punti, - d(x,y) la distanza fra due punti x e y; in genere sarà la distanza euclidea - Cxy la classe ottenuta dal raggruppamento di x e y, - CA e CB due classi con rispettivamente nA e nB punti e con baricentri x A e x B : xA = - ∑ 1 nA ∑ x i ∈A xi xB = 1 nB ∑ x i ∈B xi la somma su tutti i punti di CA x i ∈A Ricordiamo che i punti appartengono a uno spazio a p dimensioni e quindi anche i baricentri sono punti a p dimensioni, le cui coordinate sono i baricentri delle singole variabili. Considerate l’esempio sulle regioni e verificate le coordinate dei baricentri delle tre classi. Molti sono i metodi per aggregare le classi, infatti varie sono le possibilità di definire una distanza fra due classi. • Metodo della distanza minima o single linkage La distanza fra la classe formata dai punti x e y e un punto z è definita come: D (Cxy,z) = min { d(x,z),d(y,z) } La distanza fra CA e CB è la minima distanza fra ogni punto di CA e ogni punto di CB • Metodo della distanza massima o complete linkage La distanza fra la classe formata dai punti x e y e un punto z è definita come: D (Cxy,z) = max { d(x,z),d(y,z) } La distanza fra CA e CB è la massima distanza fra ogni punto di CA e ogni punto di CB • Metodo della distanza media o average linkage. La distanza fra la classe formata dai punti x e y e un punto z è definita come: D (Cxy,z) = d(x, z) + d(y, z) 2 La distanza fra CA e CB è la distanza media fra coppie di punti, uno in CA e uno in CB • Metodo dei centroidi In generale la distanza fra CA e CB è la distanza fra i baricentri CA e CB: D (Cxy,z) = d(xA , xB ) 5 Algoritmo di aggregazione Una volta scelto il metodo di aggregazione fra le classi, i passi dell'algoritmo di aggregazione gerarchica ascendente di n punti sono i seguenti: passo 1: si costruisce la matrice delle distanze fra gli n punti; si cercano i due punti più vicini e li si aggrega in un'unica classe; passo s: a partire dalla matrice delle distanze del passo s-1 si costruisce una nuova matrice delle distanze: si ricalcolano le distanze della classe costruita al passo precedente con le altre classi, le altre distanze rimangono inalterate. Si cercano le due classi più vicine e si aggregano in un'unica classe; passo n-1: si hanno solo due classi che vengono raggruppate nella classe costituita da tutti i punti iniziali. ESEMPIO con 9 punti – continua Utilizziamo il quadrato della distanza euclidea e come criterio di aggregazione quello della distanza minima. Qui sotto sono riportati tutti i passi dell'algoritmo. Osservazione: questa non è propriamente una distanza, non va bene lo stesso per i nostri scopi 1 2 3 4 5 6 7 8 9 C1 C1 C2 1 0 178 32 4770 1853 3508 877 2977 3637 2 178 0 130 3172 901 2250 1073 2465 3077 3 32 130 0 4226 1557 2980 629 2393 2989 4 4770 3172 4226 0 701 202 4645 2533 2749 5 1853 901 1557 701 0 421 2330 1898 2320 6 3508 2250 2980 202 421 0 2993 1325 1517 7 877 1073 629 4645 2330 2993 0 1044 1378 8 2977 2465 2393 2533 1898 1325 1044 0 34 9 3637 3077 2989 2749 2320 1517 1378 34 0 1-3 2 4 5 6 7 8 9 C1 1-3 0 130 4226 1557 2980 629 2977 2989 2 130 0 3172 901 2250 1073 2465 3077 4 4226 3172 0 701 202 4645 2533 2749 5 1557 901 701 0 421 2330 1898 2320 6 2980 2250 202 421 0 2993 1325 1517 7 629 1073 4645 2330 2993 0 1044 1378 8 2977 2465 2533 1898 1325 1044 0 34 9 2989 3077 2749 2320 1517 1378 34 0 1-3 2 4 5 6 7 8-9 C1 1-3 0 130 4226 1557 2980 629 2977 2 130 0 3172 901 2250 1073 2465 4 4226 3172 0 701 202 4645 2533 5 1557 901 701 0 421 2330 1898 6 2980 2250 202 421 0 2993 1325 7 629 1073 4645 2330 2993 0 1044 C2 8-9 2977 2465 2533 1898 1325 1044 0 6 Matrice iniziale Passo 1: Si aggregano i punti 1 e 3 nella classe C1. Passo 2: Si aggregano i punti 8 e 9 nella classe C2. C3 C2 C3 C4 C2 C3 C5 C2 C6 C5 C2 C7 C2 C1-2 4 5 6 7 8-9 C3 C1-2 0 3172 901 2250 629 2465 4 3172 0 701 202 4645 2533 5 901 701 0 421 2330 1898 6 2250 202 421 0 2993 1325 7 629 4645 2330 2993 0 1044 C1-2 4-6 5 7 8-9 C3 C1-2 0 2250 901 629 2393 C4 4-6 2250 0 701 4645 2533 5 901 701 0 2330 1898 7 629 4645 2330 0 1044 C2 8-9 2393 2533 1898 1044 0 C1-2 C4-6 7 8-9 C3 C1-2 0 901 629 2393 C5 C4-5 901 0 4645 2533 7 629 4645 0 1044 C2 8-9 2393 2533 1044 0 C3-7 C4-6 8-9 C6 C3-7 0 901 1044 C7 C5-C6 C5-C6 0 8-9 1044 C5 C4-5 901 0 1325 C2 8-9 2465 2533 1898 1325 1044 0 Passo 3: Si aggregano il punto 2 e la classe C1 nella classe C3, formata quindi da tre punti. Passo 4: Si aggregano i punti 4 e 6 nella classe C4. Passo 5: Si aggregano il punto 5 e la classe C4 nella classe C5, formata quindi da 3 punti. Passo 6: Si aggregano il punto 7 e la classe C3 nella classe C6, formata quindi da 4 punti. C2 8-9 1044 1325 0 Passo 7: Si aggregano le classi C5 e C6 nella classe C7, formata quindi da 7 punti. C2 8-9 1044 0 Passo 8: Si aggregano le ultime due classi C7 e C2 nella classe C8, formata quindi da tutti i 9 punti. L'aggregazione dei punti può essere sintetizzata nel seguente modo: Passo 0: {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9} Passo 1: {1, 3}, {2},{4}, {5}, {6}, {7}, {8}, {9} Passo 2: {1,3}, {2},{4}, {5}, {6}, {7}, {8 , 9} Passo 3: {1, 2, 3}, {4}, {5}, {6}, {7}, {8 , 9} Passo 4: {1, 2, 3}, {4, 6}, {5}, {7}, {8 , 9} Passo 5: {1, 2, 3}, {4, 5 , 6}, {7}, {8 , 9} Passo 6: {1, 2, 3, 7}, {4, 5, 6}, {8 , 9} Passo 7: {1, 2, 3, 4, 5, 6 , 7 }, {8 , 9} Passo 8: {1, 2, 3, 4, 5, 6 , 7 , 8 , 9} 7 Gerarchia, indice di aggregazione e dendogramma Al passo iniziale tutti le classi sono formate da un solo punto. Al passo finale c'è una sola classe. Abbiamo indicato con C1, C2, ... , Cn-1 le classi costruite ai passi 1, 2, ... , n-1. Due classi fra queste o sono disgiunte o una delle due è inclusa nell'altra. L'algoritmo di aggregazione produce quindi un ordinamento fra le classi costruite, cioè una gerarchia. È possibile assegnare a ciascuna classe C1, C2, ... , Cn-1 un indice di aggregazione ai corrispondente alla distanza fra le due classi aggregate nella loro costruzione. Indichiamo con a1, a2, ... , an-1 gli indici di C1 32 {1, 3} aggregazione. C2 34 {8, 9} A fianco sono riportati gli indici di aggregazione C3 130 {1, 2, 3} corrispondenti all'esempio precedente, dove si è C4 202 {4, 6} utilizzato il metodo della distanza minima. C5 421 {4, 5 , 6} C6 629 {1, 2, 3, 7} C7 901 {1, 2, 3, 4, 5, 6, 7 } C8 1044 {1, 2, 3, 4, 5, 6, 7, 8, 9} Il processo di aggregazione gerarchica può essere visualizzato con un albero, chiamato dendogramma con altezze proporzionali agli indici di aggregazione. ⎛ a ⎞ Talvolta è riportato in ordinata un indice di similarità calcolato come: si = ⎜ 1 - i ⎟ × 100 dove dM è il ⎜ dM ⎟⎠ ⎝ massimo delle distanze fra i punti disaggregati (al passo iniziale). A fianco è riportato il dendogramma corrispondente all'esempio con 9 punti. Sull'asse verticale è indicato l'indice di aggregazione fra le classi. Al grafico ottenuto con il software Minitab sono stati successivamente aggiunti i nomi delle classi per chiarire i passaggi dell'algoritmo. “Tagliando” l'albero con una retta orizzontale si ottiene una partizione dell'insieme dei punti tanto più fine quanto più si è vicini alle classi terminali. Ad esempio “tagliando” intorno a 700 si ottiene una partizione in 3 classi. Il software Minitab produce un output in cui viene esplicitato il processo di aggregazione passo per passo, come è riportato sotto per i dati dell'esempio con 9 punti. Cluster Analysis of Observations: X, Y Squared Euclidean Distance, Single Linkage Amalgamation Steps Step Number of Similarity Distance clusters level level 1 8 99.33 32.000 2 7 99.29 34.000 3 6 97.27 130.000 4 5 95.77 202.000 5 4 91.17 421.000 6 3 86.81 629.000 7 2 81.11 901.000 8 1 78.11 1044.000 8 Clusters New Number of obs. joined cluster in new cluster 1 3 1 2 8 9 8 2 1 2 1 3 4 6 4 2 4 5 4 3 1 7 1 4 1 4 1 7 1 8 1 9 Per i metodi della distanza minima, massima e media la sequenza degli indici di aggregazione a_1, a_2, ... , an-1 è formata da numeri che risultano ordinati in modo crescente: a_1 < a_2 < ... < an-1 Se si effettua l'aggregazione dei punti con il metodo dei centroidi, può verificarsi il caso che la sequenza degli indici di aggregazione non sia crescente, come è evidenziato dall'esempio seguente. Altri metodi di aggregazione gerarchica Molti dei metodi di aggregazione secondo la distanza hanno il difetto di produrre un “effetto catena”' come quello rappresentato a fianco; in particolare questo è il caso del metodo della distanza minima. Metodi gerarchici alternativi a quelli basati sulla distanza consistono nel ricercare a ciascun passo una aggregazione di classi in modo che la varianza all'interno della classe sia minima. Il principale e il più usato fra questi è il Metodo di Ward; consiste nel raggruppare ad ogni passo due classi CA di peso nA e CB di peso nA che rendono minima la perdita di varianza fra le classi. Si dimostra che questo criterio corrisponde a unire due classi che hanno minima, non la distanza come negli algoritmi precedenti, ma la distanza pesata fra i baricentri, dove il peso è: aggregazione fra due classi è: n A nB e l’indice di n A + nB n A nB d (x A , x B ) n A + nB Come determinare il numero di classi L'individuazione del numero delle classi finali è, in genere, non univoca, a meno che non si abbiano motivi a priori per la sua determinazione. In genere si effettua una prima analisi senza specificare il numero di classi finali; si osservano quindi il dendogramma e la variazione a ogni passo degli indici di aggregazione (o di dissimilarità): il passo in cui i valori cambiano in modo significativo può identificare un buon punto per “tagliare” il dendogramma. Si può poi effettuare una seconda analisi specificando il numero di classi e stabilire se i raggruppamenti hanno un qualche senso per i dati in esame. Per determinare il numero di classi si possono inoltre utilizzare alcune statistiche relative alle classi individuate che sono fornite dai software statistici, come per esempio la numerosità delle classi, la distanza fra i centri delle classi, l'inerzia interna delle classi e le distanze medie e massime dei punti di ciascuna classe dal loro centro, a seconda che l'obiettivo sia di individuare classi di circa uguale numerosità, uguale varianza, uguale distanza fra i centri, e così via. 9 Standardizzazione delle variabili Il tipo di aggregazione dei punti può essere influenzato dalla dispersione delle singole variabili: se una variabile ha una varianza molto alta, la nuvola di punti si allunga nella direzione dell'asse su cui è rappresentata: questo talvolta può influenzare involontariamente il risultato. Se si vuole fare un'analisi che prescinda dalla dispersione di ciascuna variabile si devono preventivamente standardizzare i dati, cioè rendere tutte le variabili di media nulla e varianza unitaria. La “centratura” delle variabili in realtà non è necessaria per il problema che stiamo considerando. Talvolta, per uniformare la dispersione delle variabili, si divide ciascuna variabile, invece che per la propria standard deviation, per il proprio “range” (cioè l'ampiezza dell'intervallo su cui assume valori la variabile). ESEMPIO Consideriamo nuovamente i dati relativi ad alcuni aspetti della Sanità pubblica affrontato nell'esempio iniziale. L'analisi riportata precedentemente era stata effettuata con le variabili standardizzate. Variable Mean StDev Le medie e le standard deviation delle variabili su tutte le regioni sono riportate a fianco. Medici 8.312 0.741 Si può osservare che gli interventi di pronto Postiletto 5.240 0.692 soccorso e la soddisfazione hanno una standard Pediatri 8.524 1.398 deviation molto più alta rispetto alle altre variabili. interv_PS 390.3 56.8 soddisfaz 40.66 11.38 Se i dati non vengono standardizzati le aggregazioni in tre gruppi sono le seguenti: - Piemonte, Lombardia, Trentino A. A., Friuli V. G., Liguria, Emilia-Romagna, Umbria, Marche, Molise, Campania - Valle d'Aosta, Toscana, Puglia, Basilicata, Calabria, Sardegna - Veneto, Lazio, Abruzzo, Sicilia Si può osservare ad esempio che nel primo gruppo non compaiono più le regioni Veneto, Lazio e Abruzzo che hanno valori molto lontani dal baricentro per le variabili interventi di pronto soccorso e la soddisfazione. Viceversa compaiono nel primo gruppo di questa seconda analisi le regioni Liguria, EmiliaRomagna, Umbria, Molise, Campania che hanno valori vicini al baricentro per le due variabili precedenti ma lontani dal baricentro per le altre variabili. 10 Come interpretare i risultati Abbiamo detto che per determinare il numero di classi si possono utilizzare anche alcune statistiche relative alle classi individuate che sono fornite dai software statistici, come per esempio la numerosità delle classi, la distanza fra i centri delle classi, l'inerzia interna delle classi e le distanze medie e massime dei punti di ciascuna classe dal loro centro. Queste informazioni permettono anche di interpretare i riusltati ottenuti. Consideriamo nuovamente l’esempio sugli aspetti sanitari nelle regioni italiane. Avendo scelto una partizione in 3 classi si ha: Final Partition Number of clusters: 3 Cluster1 Cluster2 Cluster3 Number of observations 8 5 7 Within cluster sum of squares 26.1088 11.9566 15.9042 Average distance from centroid 1.64228 1.47736 1.42365 Maximum distance from centroid 3.05570 1.97578 2.05276 Cluster Centroids Variable medici posti letto pediatri interv PS soddisfaz Cluster1 -0.218731 0.809712 -0.140562 0.681297 0.744677 Cluster2 0.78851 -0.52053 1.16456 -0.51988 0.21960 Cluster3 -0.31324 -0.55358 -0.67118 -0.40729 -1.00792 Grand centroid 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 Distances Between Cluster Centroids Cluster1 Cluster2 Cluster3 Cluster1 0.00000 2.49117 2.53094 Cluster2 2.49117 0.00000 2.47071 Cluster3 2.53094 2.47071 0.00000 Esaminiamo nei dettagli le tre tabelle. - La prima fornisce informazioni sulla numerosità e la “compattezza” di ciascuna classe; in particolare: o Within cluster sum of square: è la somma dei quadrati delle distanze dei punti della classe dal baricentro della classe. Dividendo tale valore per la numerosità della classe si ha la varianza dei punti della classe: classi con varianza maggiore sono più disperse. Nell’esempio la prima classe è la più dispersa con una varianza di 3.26. o Average distance from centroid: è la media delle distanze dei punti della classe dal baricentro della classe; fornisce informazioni simili al precedente. o Maximum distance from centroid: permette di individuare se nella classe ci sono punti anomali. Nell’esempio la prima classe è quella con maggiore distanza. - La seconda fornisce le medie delle variabili di ciascuna classe; permette di interpretare le classi in base alle variabili oggetto di studio (attenzione le variabili sono standardizzate). Nell’esempio si ottengono gli stessi commenti già riportati a pagina 3 e cioè che nella terza classe si trovano quelle regioni che hanno valori bassi per tutte le variabili, soprattutto per la soddisfazione, mentre le regioni della seconda classe sono caratterizzate da un alto numero di pediatri e parzialmente di medici. - La terza fornisce le distanze fra i baricentri delle classi; in questo esempio le tre classi sono ugualmente distanti dal baricentro. 11 Variabili binarie e variabili ordinali – distanza Manhattan Quando i dati non sono quantitativi, le distanze fra punti in generale perdono di significato. Si possono però introdurre degli indici di dissimiglianza che operano sulle codifiche numeriche dei dati qualitativi. Consideriamo anzitutto il caso di variabili binarie. Possiamo adottare come indice di dissimilarità fra due punti x e y il numero di discordanze dei risultati delle p variabili binarie considerate. Ad esempio se si codificano i valori assunti con 0 e 1 e se x=(0,1,1,0,0,1) e y=(1,1,1,0,0,0), allora vi sono due discordanze e l'indice di dissimilarità è 2. Questo indice corrisponde alla cosiddetta distanza Manhattan nel caso in cui le codifiche numeriche delle variabili sono appunto 0 e 1: p d (x , y ) = ∑ x k − y k k =1 Il nome di questa distanza, Manhattan o City block, è suggerito dalla struttura rettangolare (o a blocchi) di molte città statunitensi, in particolare New York; se si misura la distanza fra due punti della città con il minimo percorso stradale necessario per andare da uno all'altro, a Manhattan, la distanza fra due punti corrisponde proprio alla somma della distanza fra i punti in una direzione e la distanza dei punti nella direzione ad essa perpendicolare. Approfondimento Una distanza è una funzione che associa a ciascuna coppia di punti un numero reale: tale che, per ogni scelta di punti x, y, z si abbia: (i) d(x,y) ≥ 0 e d(x,y)=0 se e solo se x=y (ii) d(x,y)=d(y,x) (iii) d(x,y) ≤ d(x,z)+d(y,z) (questa è detta relazione triangolare) La stessa distanza si anche usare nel caso di variabili ordinali quando i livelli sono codificati con numeri che mantengono l'ordinamento. Se le codifiche numeriche delle p variabili assumono valori molto diversi fra loro allora, come nel caso delle variabili quantitative, si pone il problema di una loro “omogeneizzazione”; questa può essere ottenuta dividendo ogni variabile per il range dei valori assunti. Questo è ad esempio il caso in cui una variabile assume valori 100, 150, 200 e un'altra valori 0, 1, 2 e 3. Nel caso in cui si voglia analizzare un inseme di dati con variabili di differente tipo (quantitative, ordinali, binarie) è usuale utilizzare in tutti i casi la distanza Manhattan dopo aver preventivamente resa omogenea la dispersione delle variabili, dividendo i dati di ciascuna di esse per il corrispondente “range”. Aggregazione delle variabili Lo scopo principale dell'analisi di aggregazione è quello di formare raggruppamenti delle unità sperimentali. è però possibile utilizzare le stesse tecniche viste per i punti per aggregare le variabili anche allo scopo di individuare le variabili responsabili delle aggregazioni delle unità sperimentali. Gli algoritmi visti per le unità sperimentali vengono applicati alle variabili aggregando di volta in volta i due punti (variabili) con coefficiente di correlazione massimo. Ciò ha una giustificazione teorica che esponiamo brevemente. Anzitutto si considerano come punti da aggregare le variabili standardizzate. I punti appartengono a uno spazio a n dimensioni. Consideriamo il quadrato della distanza euclidea fra due punti-variabili: d(x,y) = n ∑ i=1 (x i - y i )2 = n ∑ i=1 n x i2 + ∑ y i2 - 2 i=1 n ∑ i=1 x i y i = 2 n (1 - ρ (x,y)) La distanza usata nel caso dei punti-variabili è quindi 1 - ρ (x, y) e la distanza minima fra due punti si ha in corrispondenza del massimo del coefficiente di correlazione. 12 ESEMPIO Consideriamo nuovamente l'esempio iniziale relativo ad alcuni aspetti della sanità pubblica nelle regioni italiane. medici postil. pediatri intPS soddis. A fianco è riportata la matrice delle distanze fra le variabili. medici postiletto pediatri interv_PS soddisfaz 0.00 1.24 0.41 1.11 1.14 Se si effettua la aggregazione dei punti-variabile usando lo stesso metodo dei punti-unità, cioè il metodo di Ward, si ottiene il seguente dendogramma. 1.24 0.00 0.97 0.51 0.72 0.41 0.97 0.00 0.94 0.87 1.11 0.51 0.94 0.00 0.55 Distance 1.79 1.19 0.60 0.00 medici pediatri posti letto interv PS soddisfaz Variables 13 s 1.14 0.72 0.87 0.55 0.00 ESERCIZI ESERCIZIO 1) Si condierino le seguenti rilevazioni quantitative su 4 unità sperimentali: X di due Y variabili 2 4 4 2 A) Disegnare il grafico di dispersione dei punti. 5 1 3 4 B) Calcolare il baricentro dei punti e indicarlo nella rappresentazione grafica C) Effettuare una cluster analysis utilizzando la distanza euclidea al quadrato e il metodo del Complete linkage (max). a) scrivere la matrice delle distanze iniziale e a ciascun passo dell’aggregazione b) indicare gli indici di aggregazione c) disegnare approssimativamente il dendogramma. Passo1 Passo 2 0 0 0 0 0 0 0 0 0 a1 = a2 = a3 = ESERCIZIO 2) I dati, già analizzati in una scheda precedente, riguardano atleti che praticano sport di fondo; sono rilevati l’età, il peso, il consumo di ossigeno, il tempo di percorrenza di un fissato tragitto di corsa, le pulsazioni cardiache al minuto da fermo e le pulsazioni medie e massime durante la corsa. La cluster analysis fornisce i seguenti risultati. Final Partition Number of clusters: 3 Cluster1 Cluster2 Cluster3 Number of observations 15 4 12 Within cluster sum of squares 72.9893 14.1313 42.5261 Average distance from centroid 2.11503 1.85435 1.76859 Maximum distance from centroid 3.25867 2.20535 3.13582 Cluster Centroids Variable eta peso ossigeno tempo pulsferm pulsmed pulsmax Distances Cluster1 Cluster2 Cluster3 -0.002063 -1.37724 0.461660 -0.108844 0.45332 -0.015050 -0.657454 1.60936 0.285363 0.591896 -1.38288 -0.278909 0.334458 -0.84673 -0.135830 0.717406 -0.20924 -0.827010 0.650270 0.29744 -0.911986 Between Cluster Centroids Grand centroid 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 -0.0000000 14 Cluster1 Cluster2 Cluster3 Cluster1 0.00000 3.69103 2.63022 Cluster2 3.69103 0.00000 2.98704 Cluster3 2.63022 2.98704 0.00000 a) Commentare b) A quale cluster potrebbero appartenere i due atleti con le seguenti rilevazioni standardizzate? Perchè? eta peso ossigeno tempo pulsferm -0.51376 -1.32010 -0.49215 0.38480 -0.32176 1.21321 0.68145 0.84081 -0.18461 -0.45300 pulsmed pulsmax 0.61986 0.24288 -0.35556-0.41185 CLUSTER ______ CLUSTER ______ ESERCIZIO 3) Viene effettuata una cluster analysis sulle seguenti variabili, rilevate su 31 Stati a) Percentuale di superficie irrigata b) Densità di popolazione c) Percentuale di popolazione al di sotto dei 14 anni d) Speranza di vita alla nascita e) Percentuale di alfabetismo f) Tasso di disoccupazione g) Numero IPServer per milioni di persone h) Numero di TV per persona i) Chilometri di ferrovie sul totale di superficie j) Numero di aeroporti sul totale di superficie Cluster Analysis of Observations: Area, Irrigated, Population, Under,14, ... Standardized Variables, Euclidean Distance, Ward Linkage Final Partition Number of clusters: 4 Cluster1 Cluster2 Cluster3 Cluster4 Number of observations 18 12 2 6 Within cluster sum of squares 105.813 67.655 52.588 56.890 Average distance from centroid 2.16245 2.18479 5.12778 2.77860 Maximum distance from centroid 5.81430 4.33060 5.12778 5.51680 Cluster Centroids Variable Area Irrigated Population Under,14 Life,expectancy Literacy,Rate Unemployment ISPs/million Tvs/person Railways Airports Irr% Dens_pop Dens_rail Dens_airp Cluster1 0.124156 -0.191882 -0.141646 -0.291678 0.512856 0.463919 -0.404092 -0.097244 0.279623 -0.077078 -0.064626 -0.123894 -0.183890 -0.184123 -0.221732 Cluster2 -0.36517 -0.13455 -0.20368 1.10003 -1.24210 -1.17303 1.02364 -0.44400 -0.45824 -0.36571 -0.25692 0.22101 -0.14838 -0.56711 -0.55582 Cluster3 2.64946 3.60560 3.31222 -0.59913 0.54172 0.34636 -0.57810 1.30924 0.10532 3.38510 2.82919 0.13383 -0.18752 -0.29789 0.16302 15 Cluster4 -0.52528 -0.35713 -0.27177 -1.12531 0.76505 0.83884 -0.64231 0.74331 0.04250 -0.16570 -0.23533 -0.11495 0.91093 1.78589 1.72248 Grand centroid 0.0000000 -0.0000000 -0.0000000 0.0000000 0.0000000 0.0000000 -0.0000000 -0.0000000 0.0000000 0.0000000 0.0000000 -0.0000000 -0.0000000 -0.0000000 -0.0000000 Distances Between Cluster Centroids Cluster1 Cluster2 Cluster3 Cluster4 Cluster1 0.00000 3.33838 7.44738 3.32885 Cluster2 3.33838 0.00000 8.60023 5.43569 Cluster3 7.44738 8.60023 0.00000 8.34068 Cluster4 3.32885 5.43569 8.34068 0.00000 COMMENTARE DETTAGLIATAMENTE, spiegando in particolare da quali variabili sono caratterizzati i cluster. 16 ESERCIZIO 4) Si condierino le seguenti rilevazioni di due variabili quantitative su 5 unità sperimentali: a) Disegnare il grafico di dispersione dei punti. X Y P1 1 1 P2 2 3 P3 5 7 P4 6 5 P5 6 7 b) Scrivere la matrice delle distanze iniziale utilizzando la distanza euclidea al quadrato. 0 0 0 0 0 Si considerino i seguenti quattro metodi di aggregazione delle classi: 1. Complete linkage (massimo) 2. Avereage linkage (media) 3. Single linkage (minimo) 4. Centroidi c) Quali punti vengono aggregati al primo passo con i 4 metodi? Al penultimo passo di aggregazione con tutti i metodi i punti risultano aggregati nelle seguenti due classi: C1={P1, P2} C2={P3, P4, P5}. d) Calcolare i baricentri delle due classi. e) Calcolare la distanza fra C1 e C2 con i quattro metodi. ESERCIZIO 5) Viene effettuata una cluster analysis sulle seguenti variabili, rilevate in ciascuna regione italiana. I dati riguardano il 2003 e sono tratti dal sito: http://www.istat.it/agricoltura/datiagri/fiori/fiori.htm 1. 2. 3. 4. 5. 6. 7. 8. 9. Piante da vaso con fiori coltivate in serra Piante da vaso con fiori coltivate in piena aria Piante da vaso con solo foglie coltivate in serra Altre piante da vaso coltivate in serra Altre piante da vaso coltivate in piena aria Superfici adibite a serra per la coltivazione di fiori recisi Produzione di fiori recisi coltivati in serra Superfici aperete adibite alla coltivazione di fiori recisi Produzione di fiori recisi coltivati in piena aria I risultati sono i seguenti. Final Partition Number of clusters: 3 Number of Within cluster sum of Average distance from Maximum distance from 17 Cluster1 Cluster2 Cluster3 observations 3 8 5 squares 14.5751 3.5045 46.5572 Cluster Centroids Variable Cluster1 PV fiore serra 1.67147 PV fiore aria 0.75241 PV foglia serra 0.33237 PV foglia aria -0.23004 Altre PV serra 1.10083 Altre PV aria 1.02541 Sup FR serra -0.14360 Prod FR serra -0.30587 Sup FR aria 0.08124 Prod FR aria -0.37414 centroid 2.16250 0.53716 2.99969 Cluster2 -0.579321 -0.663903 -0.656307 -0.521028 -0.560431 -0.462714 -0.666903 -0.610163 -0.752988 -0.584139 centroid 2.76548 1.50354 3.72019 Cluster3 -0.07597 0.61080 0.85067 0.97167 0.23619 0.12510 1.15320 1.15978 1.15604 1.15910 Grand centroid 0.0000000 0.0000000 0.0000000 -0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 -0.0000000 Distances Between Cluster Centroids Cluster2 3.77027 0.00000 4.52617 Cluster3 3.69869 4.52617 0.00000 19.30 Commentare dettagliatamene indicando in particolare da che cosa sono caratterizzati i tre cluster. 12.87 6.43 0.00 18 Lombardia Veneto Lazio Liguria Toscana Puglia Sicilia Campania Trentino-Alto Adige Friuli-Venezia Giulia Abruzzo Umbria Calabria Sardegna Marche Emilia-Romagna Cluster1 0.00000 3.77027 3.69869 Distance Cluster1 Cluster2 Cluster3