Comments
Transcript
4^ Lezione Cluster [modalità compatibilità]
09/05/2011 Introduzione Cluster analysis Lo scopo della cluster analysis è raggruppare le unità intervistate in gruppi massimamente disomogenei tra loro, ma che al loro interno contengano individui con caratteristiche simili. Corso di Analisi di Mercato - Anno 2011 1 1.Calcolare la matrice delle distanze: Corso di Analisi di Mercato - Anno 2011 2 2. Lanciare la cluster analysis Caricare il pacchetto clsuter hc <- hclust(distanze, method = “ward”) dati<-read.csv2("centrocomm.csv") Il metodo di ward utilizza un algoritmo che tende a: Minimizzare la varianza within (varianza fra gli elementi di ogni gruppo) Massimizzare la varianza between (varianza fra i gruppi). Si utilizza la funzione “daisy”; distanze <- daisy(dati) E’ un metodo misto per calcolare la matrice delle distanze. Calcola: -le “distanze” tra variabili quantitative -“indici di similarità” tra variabili qualitative. Corso di Analisi di Mercato - Anno 2011 3 Corso di Analisi di Mercato - Anno 2011 4 1 09/05/2011 Il dendrogramma 14 possibile 6 0 2 4 hang=-1 consente di accorciare le “radici” frame.plot crea il bordo ann=F permette di deselezionare la descrizione del grafico 8 10 plclust(hc, hang=-1, labels=F, ann=F, frame.plot=T) 12 Il risultato della cluster analysis è visualizzarlo graficamente con la funzione: Corso di Analisi di Mercato - Anno 2011 5 Il dendrogramma è uno strumento importante nelle tecniche di clustering. Consente di rappresentare graficamente il processo di aggregazione dalle singole unità statistiche fino ad arrivare ad un unico cluster contenente tutte le unità statistiche. •Asse delle ascisse distanza logica dei clusters secondo la metrica definita •Asse delle ordinate livello gerarchico di aggregazione (valori interi positivi) Corso di Analisi di Mercato - Anno 2011 6 Taglio del dendrogramma rect.hclust (hc, h=600) # Visualizza in automatico quanti gruppi ci sono ad ad altezza 600 rect.hclust (hc, k=3) # Visualizza automaticamente i gruppi con k= 3 gruppi La scelta del livello gerarchico (del valore dell'asse Y) definisce la partizione rappresentativa del processo di aggregazione. Corso di Analisi di Mercato - Anno 2011 7 Corso di Analisi di Mercato - Anno 2011 8 2 09/05/2011 12 14 Cutree è la funzione che consente di creare la partizione con il numero di cluster desiderato. 8 10 partizione3 <- cutree(hc,k=3) # crea una partizione a 3 cluster 0 2 4 6 Per verificare la numerosità dei 3 gruppi formati: pie(table(partizione3),col=rainbow(3)) table(partizione3) Corso di Analisi di Mercato - Anno 2011 9 Corso di Analisi di Mercato - Anno 2011 Analisi dei Cluster (confronti) table(dati$genereinterv, partizione) f m 2 partizione 1 Gli strumenti sono gli stessi già visti per le descrittive uni e bivariate. Esempio: table(dati$genereinterv,partizione3) 10 plot(table(dati$genereinterv,partizione3),col=rainbow(3)) Corso di Analisi di Mercato - Anno 2011 3 Il mosaico consente di visualizzare come sono caratterizzati cluster rispetto alle variabili qualitative. 11 Corso di Analisi di Mercato - Anno 2011 12 3 09/05/2011 60 20 30 40 50 Il boxplot consente di caratterizzare i due cluster rispetto alle variabili quantitative. 70 80 boxplot(split(dati$etainterv,partizione3)) 1 Corso di Analisi di Mercato - Anno 2011 13 2 Corso di Analisi di Mercato - Anno 2011 3 14 I cluster come dataframe partizione3<-as.vector(partizione3) ”as.vector” permette di trattare “partizione” (che R alla creazione riconosce come stringhe di testo e non come numeri) come un vettore di numeri. gruppo1<- dati[partizione3==1,] gruppo2<- dati[partizione3==2,] gruppo3<- dati[partizione3==3,] Abbiamo creato i 3 gruppi. A questo punto i 3 gruppi si possono analizzare come se fossero 3 singoli dataframe. fix (gruppo1) Corso di Analisi di Mercato - Anno 2011 15 4