Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
MISURE DI DISTANZA
Useremo solo una procedura proc distance che è sempre la stessa, l’unico punto di attenzione è la
natura delle variabili. Noi ora non lavoriamo più sulle variabili, ma con le unità rispetto alle
variabili e quindi ci concentriamo su N.
Otteniamo tabelle in cui ogni cella mi dice la distanza tra le unità; come calcolare la distanza tra le
varie righe dipende dalla natura delle variabili.
Due clienti sono vicini se hanno esattamente lo stesso valore per ogni risposta; se sono diversi
sono lontani, ma quanto? Per calcolarlo uso misure di distanza.
La disuguaglianza triangolare è una proprietà della distanza che ci dice che la distanza tra due punti
è pari al percorso più breve percorribile tra due punti. ANALISI DI MERCATO | Rachele Campigli
SIMILARITÀ
La distanza euclidea è quella su cui si basa la proc cluster con dati quantitativi
Quando le variabili sono binarie possiamo sviluppare diversi indici:
- Tabella a p variabili a unità i e i’, assumono tutte 1 o 0
a= rappresenta il numero di variabili per le quali entrambe le
unità i e i’ presentano l'attributo 1. (Co-Presenze)
d= il numero di variabili per le quali entrambe le unità i e i’
sono state codificate 0. (Co-Assenze)
b + c= rappresenta il numero di variabili per le quali le unità i e i’ presentano codifica
diversa. (Dissimilarità).
p = a + b + c + d rappresenta il numero totale delle variabili osservate.
- INDICE DI SIMILARITÀ DI RUSSEL-RAO
Qui due unità sono considerate simili solo se danno entrambe “1” alle risposte, mentre le
co-assenze non sono considerate al numeratore e l’indice non lo rileva.
Se io calcolo con Russel- Rao potrei avere un valore di 1.
Il suo difetto è che escludendo le co-assenze solo dal numeratore, nella diagonale
principale potrei trovare un valore minore di uno
È un difetto per noi se vogliamo usare la matrice come input per un successivo cluster, non
è un difetto in assoluto. In questo caso Russel-Rao
vede similarità solo nei
soggetti che hanno pagato
tramite CC (con valore 1).
Lo uso quindi quando
nella mia analisi non è
importante la similarità
per 00 perché colgo la
similarità che a me
interessa.
ANALISI DI MERCATO | Rachele Campigli
- INDICE DI SIMILARITÀ DI JACCARD
Tale indice è dato dal rapporto tra il numero di co-presenze e il numero totale di variabili,
escluse quelle che manifestano co-assenze.
Esclude le co-assenze anche lui, ma non soffre il problema della mancanza di 1 sulla
diagonale principale.
- INDICE DI SIMILARITÀ DI SOKAL-MICHENER
Anche noto come coefficiente di matching semplice. La similarità è data dal rapporto tra il
numero di co-presenze e co-assenze ed il numero totale di variabili:
Misura la proporzione di variabili per le quali le unità i e i’ presentano gli stessi attributi.
Nell'esempio considerato si ottiene:
In questo caso aumenta ancora, perché coglie la similarità sia per la co-presenza sia per la
co-assenza, cosa che i due precedenti non colgono.
Se non vi fossero state le co-assenze la risposta sarebbe stata in linea tra i tre indicatori.
Se abbiamo variabili miste (sia binarie che qualitative etc..) dobbiamo usare una misura di
distanza più generica, ed è rappresentata dalla:
- DISTANZA DI GOWER
È dato dalla media pesata delle distanze tra due unità i e i’ calcolate dopo che ogni variabile
è stata riscalata nella scala [0, 1]. È definito come:
Per variabili binarie l'indice di Gower è calcolato in base alla seguente tabella:
ANALISI DI MERCATO | Rachele Campigli
ATTRIBUIRE ALLE VAR BINARIE UN’INTERPRETAZIONE DI SIMMETRIA/ASIMMETRIA IN SAS:
- Creiamo un dataset chiamato prodotti e lo salviamo in work
Data work.Prodotti;
Input Unita $ a b c d e f g h;
-> $ assegna col formato alfanumerico e dà i nomi a colonne, dopo colonne non metto
alcun simbolo per far sì che sas assegni formato numerico alle variabili.
datalines; ->Indica a sas che da ora inizio a scrivere i dati, devo rispettare la struttura del
dataset che creo ANALISI DI MERCATO | Rachele Campigli
- Ora calcolo la matrice delle distanze euclidee tra le unità rispetto alle 8 variabili, usando la
proc distance
proc distance data=Prodotti out=Dist method=euclid shape=square; var ratio(a b c d e f g
h); id unita; run;
->ratio = dati sono espressi in scala di rapp
È importante specificare square sennò ci riporta il triangolo della matrice (è uguale perché
è simmetrico).
Possiamo chiedere di stampare la matrice a schermo e non come dataset (se N non è
elevato) Ci accorgiamo che è una matrice di distanze euclidee:
-perché c’è lo 0 nella diagonale
-perché al di fuori della diagonale principale NON abbiamo dei valori compresi tra 0 e 1
(come sarebbe una matrice di similarità)
Questo è il punto di partenza per fare una clusterizzazione.
- Usare misura di Gower
DISSIMILARITA’ proc distance data=Prodotti out=dissimilar method=dgower
shape=square; var ratio(a b c d e f g h); id unita; run;
SIMILARITA’: proc distance data=Prodotti out=similar method=gower shape=square; var
ratio(a b c d e f g h); id unita; run;
- Con 8 variabili binarie
- Metodo Jaccard (solo per dati binari di tipo asimmetrico)
Proc Distance Data=Example1 Out=Similarities Shape=Square Method=Jaccard Absent=0;
Var ANominal(x1-x8); ->così stabiliamo che var sono asimmetriche Id Unit; Run
-> absent= 0 è per quando i dati sono tipo si/no
Questo è l’output: Come notiamo Jaccard non considera simili se l’attributo è
assente, in realtà dipende da che dati abbiamo.
Se avessi specificato le variabili come asimmetriche avrei avuto
un errore perché jaccard accesa solo variabili ANominal o Ratio
- Usando Russel-Rao:
Proc Distance Data=Example1 Out=Similarities Shape=Square Method=RR Absent=0 ; Var
ANominal(x1-x8); Id Unit; Run; ANALISI DI MERCATO | Rachele Campigli
- Usando Sokal-Michener:
Qui le variabili devono essere simmetriche
Proc Distance Data=Example1 Out=Similarities Shape=Square Method=Match Absent=0 ;
Var Nominal(x1-x8); -> Nominal= simmetriche Anominal= asimmetriche Id Unit; Run;
L’indicatore ora è in grado di rilevare similarità
anche tra 0 e 0
Con il coefficiente di match semplice se noi
abbiamo zeri produrremo similarità sempre più
alte, come detto in precedenza.
Se invece che dire Nominal dico Anominal ricevo errore perché il metodo match accetta
soltanto variabili Nominal (Nominal= variabile binaria simmetrica / variabile qualitativa
ordinale)
Usando Gower possiamo anche applicarlo a dati che sono tutti binari ma otteniamo lo
stesso risultato che ci da Jaccard.
ESEMPIO 2-LATTE
Come prima cosa notiamo che le variabili possono essere trasformate in binarie, lo facciamo:
data latte1;
set latte;
if tipologia="Fresco" then tipologia=1; else tipologia=0;
if provenienza="Italia" then provenienza=1; else provenienza=0;
if grassi="<0.5” then grassi=0; else grassi=1;
if digeribilita="Alta" then digeribilita=1; else digeribilita=0;
if Sconto="Sì" then sconto=1; else sconto=0;
if Confezione="Bottiglia" then Confezione=1; else Confezione=0; run;
CLUSTER ANALYSIS GERARCHICA
Clusterizzazione= processo di raggruppamento di oggetti fisici o astratti in classi composte da
oggetti simili.
L'obiettivo è trovare gruppi che sono internamente omogenei (coesione interna) ed eterogenei tra
loro (separazione esterna). Si lavora sulle righe, ovvero su n. -> Data una matrice di dati con n
unità (righe) e p variabili (colonne), la Cluster Analysis è la tecnica statistica che consiste nel
raggruppamento delle n unità in k sottoinsiemi (gruppi o clusters) con k < n, che possiede le due
seguenti proprietà:
- L’esistenza dei gruppi non è nota e definita a priori
- I gruppi sono una combinazione di oggetti con caratteristiche simili separati dagli oggetti
con diverse caratteristiche.
La partizione è un insieme di cluster ANALISI DI MERCATO | Rachele Campigli
TEOREMA DI HUYGENS
È il principio base della cluster-> L'inerzia (=varianza) totale può essere scomposta in due parti:
inerzia-between e inerzia-within.
Ogni segmento ci dice qual è la variabilità totale
Tra= quanto ogni singolo gruppo si distanzia dal centro (verde)
Entro= nel gruppo, vogliamo che i segmenti siano piccoli, ovvero che i componenti del gruppo
siano omogenei.
Un cluster è tanto più omogeneo quanto minore è l'inerzia within-cluster.
Al crescere di IB, cresce anche la separazione tra clusters, e ciò indica un processo di
clusterizzazione soddisfacente.
In base al teorema di Huygens, la minimizzazione dell'inerzia within-cluster equivale alla
massimizzazione dell'inerzia between-clusters.
N.B.: la partizione in k + 1 gruppi avrà un'inerzia between-clusters maggiore di una partizione in k
gruppi. Di conseguenza, due partizioni aventi un numero di clusters diverso non possono essere
confrontate solo in base al criterio della massimizzazione dell'inerzia between-clusters.
In generale, si vuole che l’inerzia between sia il più grande possibile e quella within il più piccolo
possibile-> trovare equilibrio tra i due. Questo è l’obiettivo e per raggiungerlo bisogna fare delle
scelte:
- Che variabili usare?
Effettuare accurate analisi esplorative prima.
Prestare particolare attenzione alle osservazioni anomale che possono influenzare
negativamente l'analisi.
- Le variabili vanno standardizzate o le posso usare come sono? Le standardizzo quando sono
espresse in unità di misura diverse (in modo che le variabili siano indipendenti dall’unità di
misura che hanno impatto sul loro peso) o hanno media e varianza diverse
- Scelta del metodo di raggruppamento: gerarchico (ha complessità non lineare e non spesso
è gestibile), non-gerarchico, misto
- Scelta della misura di distanza: dipende dai dati-> se quantitativi usiamo la euclidea; uso un
indice di similarità se le variabili sono qualitative ANALISI DI MERCATO | Rachele Campigli
- Scelta di un criterio di valutazione: verificare che i gruppi siano consistenti rispetto
all’obiettivo; verificare che i gruppi ottenuti soddisfino le condizioni di coesione interna e
separazione esterna; scegliere il numero di gruppi (la partizione)
IL METODO DI WARD
È l’unico che opera ragionando sempre considerando l’obiettivo della clusterizzazi