Statistica con R Lezione 5 Statistica con R Lezione 5 Relazioni fra caratteri Esistono statistiche che servono a valutare il grado d’interazione fra due (o più) caratteri. Si tratta del primo passo verso la ricerca di relazioni causali fra i caratteri. Anche in questo caso, le statistiche dipendono dal tipo di caratteri. Introduzione alla Statistica con R Lezione 5 Sergio Camiz 22/01/2015 "Lezione 5".tex Statistica con R I-1 Lezione 5 Caratteri dicotomici o qualitativi Se si hanno n osservazioni con due caratteri osservati, con s et t modalità rispettivamente, allora si può costruire una tabella di contingenza o tabella incrociata in cui in ogni casella si trova la frequenza in cui si presentano due modalità dei due caratteri congiuntamente. Mod b1 Mod b2 . . . Mod bc Mod a1 n11 n12 . . . n1c Mod a2 n21 n22 . . . n2c ... ... ... ... ... Mod ar nr1 nr2 . . . nrc 22/01/2015 "Lezione 5".tex I-3 22/01/2015 "Lezione 5".tex Statistica con R I-2 Lezione 5 Agli estremi della tavola si riportano la distribuzione delle frequenze dei due caratteri: si chiamano frequenze marginali di riga e colonna. Se nij sono le frequenze delle celle, i totali marginali ne sono le somme per riga n.j e per colonna ni. . Mod b1 Mod b2 . . . Mod bc Tot.riga Mod a1 n11 n12 . . . n1c n1. Mod a2 n21 n22 . . . n2c n2. ... ... ... ... ... ... Mod ar nr1 nr2 . . . nrc nr. Tot.col n.1 n.2 . . . n.c n.. Il valore n.. è il totale generale della tabella, corrispondente al numero di unità statistiche osservate. 22/01/2015 "Lezione 5".tex I-4 Statistica con R Lezione 5 Colore degli occhi e colore dei capelli di 592 studenti della University of Delaware, Snee (1974). Colore dei capelli Colore degli occhi Neri Castani Rossi Biondi Totale Marroni 68 119 26 7 220 Castani 15 54 14 10 93 Verdi 5 29 14 16 64 Blu 20 84 17 94 215 Totale 108 286 71 127 592 "Lezione 5".tex Statistica con R I-5 Lezione 5 "Lezione 5".tex Se ne ottengono altre tre: • profili di riga: s’ottengono dividendo ogni riga per il suo totale marginale: f rij = nij /ni.. Risulta �ci=1 f rij = 1. Per studiare l’influenza delle modalità d’un carattere su quelle dell’altro, occorre studiare i profili, confrontandoli con i profili marginali. È questa l’informazione più importante da estrarre. Se non ci fosse influenza fra caratteri, i profili di riga e quelli di colonna sarebbero tutti uguali fra loro ed al corrispondente profilo marginale. È facile vedere che, in questo caso, in ogni cella si troverebbe il valore npipj , prodotto delle frequenze marginali corrispondenti, invece di npij = nij . La tabella di contingenza con i marginali uguali a quelli dati, in cui nella casella (i, j) si trova il valore npi.p.j , si chiama tabella di valori attesi. Considerando che si tratta di frequenze, si possono usare le statistiche: 22/01/2015 Lezione 5 • frequenze relative: s’ottengono dividendo ogni casella per il totale delle osservazioni: fij = pij = nij /n. Risulta �ri=1 �rj=1 fij = 1. Una tavola di contingenza da sola non dice molto. Si cerca quindi di trarre ulteriori informazioni, trasformando la tabella. 22/01/2015 Statistica con R I-7 • profili di colonna: s’ottengono dividendo ogni colonna per il suo totale marginale: f cij = nij /n.j . Risulta �ri=1 f cij = 1. 22/01/2015 "Lezione 5".tex I-6 Statistica con R Lezione 5 • l’entropia del carattere in linea Hr = H(X) = − r � i=1 pi . log 2 pi . • l’entropia del carattere in colonna Hc = H(Y ) = − c � j =1 p. j log 2 p. j • l’entropia congiunta, cioè l’entropia della tabella stessa Hr+c = H(X, Y ) = − 22/01/2015 r � c � i=1 j =1 "Lezione 5".tex pij log 2 pij I-8 Statistica con R Lezione 5 Statistica con R Lezione 5 • l’informazione propria d’ogni carattere, (entropia condizionale) rispettivamente Hr | c = H(X|Y ) = Hr+c − Hc Hc | r = H(Y |X) = Hr+c − Hr L’entropia congiunta dipende ovviamente anche dall’entropia dei marginali. Conviene quindi introdurre • l’entropia condizionale, informazione propria d’ogni carattere, Hr | c e Hc | r ; • l’informazione mutua Irc, condivisa cioè dai due. 22/01/2015 "Lezione 5".tex Statistica con R I-9 Lezione 5 Si dimostra che l’informazione mutua vale Irc = r � c � i=1 j =1 pij log 2 pij , pi . p. j Per le sue proprietà statistiche, si preferisce tuttavia usare la statistica del chi-quadro, data da 22/01/2015 (pij − pi. p. j )2 i=1 j =1 pi. p. j r � misurando l’entropia della tabella a prescindere da quella dei marginali, indica la quantità d’informazione comune ai due caratteri. 22/01/2015 "Lezione 5".tex Statistica con R I-10 Lezione 5 A differenza dell’informazione, il chi-quadro dipende dalla numerosità delle osservazioni. Esiste tuttavia una relazione fra le due statistiche. e misura di deviazione dall’indipendenza fra caratteri. X2 = n misura l’entropia d’un carattere avendo rimosso l’influenza dell’altro; • l’informazione mutua Irc = I(X; Y ) = Hr + Hc − Hr+c c X2 varia fra 0, nel caso dell’indipendenza, in cui pij = pi.p.j per ogni (i, j), ed n min(r − 1, c − 1) nel caso della perfetta dipendenza (una sola casella per linea non nulla). Per riportare la statistica fra 0 ed 1 sono state proposte tre altre statistiche: � "Lezione 5".tex I-11 22/01/2015 "Lezione 5".tex I-12 Statistica con R Lezione 5 C = X2 n + X2 I dati di Snee (1974) riguardano colore di occhi e capelli di 592 studenti. Se ne può costruire la tavola di contingenza. Snee=read.csv("R/Dati/Snee.csv",sep=",",quot="\"") Snee$Colore_occhi <- factor(Snee$Colore_occhi, levels = c(1,2,3,4), labels = c("Castani scuri","Castani chiari", "Verdi","Blu")) Snee$Colore_capelli <- factor(Snee$Colore_capelli, levels = c(1,2,3,4), labels = c("Neri","Castani","Rossi","Biondi")) tsnee=table(Snee[,1],Snee[,2]); tsnee • il coefficiente di Tschuprow � � � � � � � � � � T = X2 n (r − 1)(c − 1) � • il coefficiente di Cramer ϕ2 = 22/01/2015 � � � � � � � � � X2 n min ( r − 1 , c − 1 ) "Lezione 5".tex Statistica con R Lezione 5 R • il coefficiente di contiguità di Pearson � � � � � � � � Statistica con R I-13 Lezione 5 Esistono comandi che permettono di calcolare direttamente i margini, le tabelle dei profili e delle frequenze relative: tr=margin.table(tsnee,1);tr # totali marginali di riga tc=margin.table(tsnee,2);tc # e di colonna 22/01/2015 "Lezione 5".tex Statistica con R I-14 Lezione 5 Qui di seguito frequenze e profili marginali: rbind (tc,pc) Biondi Castani Neri Rossi tc 127.000000 286.0000000 108.0000000 71.0000000 pc 0.214527 0.4831081 0.1824324 0.1199324 fsnee=prop.table(tsnee) ; fsnee # frequenze relative pr=margin.table(fsnee,1); pr # profilo marginale riga pc=margin.table(fsnee,2); pc # e di colonna prsnee=prop.table(tsnee,1) ; prsnee # profili riga pcsnee=prop.table(tsnee,2) ; pcsnee # profili colonna tr pr Blu 215 0.3631757 Castani chiari 93 0.1570946 Castani scuri 220 0.3716216 Verdi 64 0.1081081 exsnee=pr%*%t(pc); exsnee # tabella valori attesi I profili marginali vanno confrontati coi profili condizionali. 22/01/2015 "Lezione 5".tex I-15 cbind (tr,pr) 22/01/2015 "Lezione 5".tex I-16 Statistica con R Frequenze Blu Castani chiari Castani scuri Verdi Profili riga Blu Castani chiari Castani scuri Verdi Profili colonna Blu Castani chiari Castani scuri Verdi Lezione 5 Biondi Castani Neri Rossi 0.158783784 0.141891892 0.033783784 0.028716216 0.016891892 0.091216216 0.025337838 0.023648649 0.011824324 0.201013514 0.114864865 0.043918919 0.027027027 0.048986486 0.008445946 0.023648649 Biondi Castani Neri Rossi 0.43720930 0.39069767 0.09302326 0.07906977 0.10752688 0.58064516 0.16129032 0.15053763 0.03181818 0.54090909 0.30909091 0.11818182 0.25000000 0.45312500 0.07812500 0.21875000 Biondi Castani Neri Rossi 0.74015748 0.29370629 0.18518519 0.23943662 0.07874016 0.18881119 0.13888889 0.19718310 0.05511811 0.41608392 0.62962963 0.36619718 0.12598425 0.10139860 0.04629630 0.19718310 22/01/2015 "Lezione 5".tex Statistica con R Lezione 5 Statistiche: Entropia delle righe Hr = - sum(pr*log(pr,2)) Hr = 1.827862 Hc = - sum(pc*log(pc,2)) Hc = 1.798227 Hrc = - sum(fsnee*log(fsnee,2)) Hrc = 3.447648 Hr_c = Hrc - Hc Hr_c = 1.649421 Hc_r = Hrc - Hr Hc_r = 1.619787 Entropia delle colonne: Entropia congiunta Entropia condizionale delle righe Entropia condizionale delle colonne Informazione mutua I-17 Irc = Hr + Hc - Hrc = sum(fsnee*log(fsnee/exsnee,2)) Irc = 0.1784404 Chi-quadro chi = sum((fsnee-exsnee)^2/exsnee)*sum(tsnee) chi = 138.2898 I 22/01/2015 "Lezione 5".tex I-19 Statistica con R Lezione 5 Per ottenere i valori attesi, basta fare il prodotto dei marginali e poi si calcolano gli scarti: exsnee=pr%*%t(pc); exsnee (fsnee-exsnee)*sum(tsnee) Biondi Blu 0.07791100 Castani chiari 0.03370104 Castani scuri 0.07972288 Verdi 0.02319211 Castani 0.17545311 0.07589367 0.17953342 0.05222790 Neri 0.06625502 0.02865915 0.06779584 0.01972243 Rossi 0.04355654 0.01884074 0.04456949 0.01296567 Biondi Castani Neri Blu 47.8766892 -19.8682432 -19.2229730 Castani chiari -9.9510135 9.0709459 -1.9662162 Castani scuri -40.1959459 12.7162162 27.8648649 Verdi 2.2702703 -1.9189189 -6.6756757 22/01/2015 "Lezione 5".tex Rossi -8.7854730 2.8462838 -0.3851351 6.3243243 I-18