Riassunto statistica – Prof Giummolè
Introduzione
Delfini possono comunicare tra loro? Esperimento: delfini Doris e Buzz in una vasca, da un lato luce, dall’altro 2 bottoni; per avere cibo delfini allenati a schiacciare bottone sx se luce lampeggia, dx se luce è fissa. Vasca divisa in 2 parti, delfini separati: Doris può solo vedere luce, Buzz schiacciare bottoni. Delfini devono comunicare per ottenere cibo. Procedura ripetuta 16 volte, ottenuti 15 successi: c'è evidenza che i delfini sanno comunicare oppure solo fortuna?
Ipotesi scelta sia casuale (come lanciare moneta): probabilità successo = 0,5. Confronto dati osservati con simulazione ipotizzando scelta casuale: in 100 volte non si ottiene mai numero successi superiore a osservato (> 15), in 10000 volte ciò accade solo 1-2 volte delfini in grado di comunicare.
Statistica: trasformare dati in informazioni, conoscenza; affinché esperimento sia informativo necessario un disegno (scegliere giusta domanda, tipo esperimento, dati, come raccoglierli). Statistica descrittiva: riassumere, rappresentare e analizzare dati (es. istogramma).
Inferenza: generalizzare informazioni contenute nei dati a tutti dati di quel tipo, trarre conclusioni su fenomeno generale (delfini comunicano). Necessaria matematica, calcolo probabilità: modelli per rappresentare realtà, valutare bontà nostre conclusioni, quantificare margine errore.
Terminologia
- Popolazione: insieme oggetti di interesse per lo studio;
- Individuo, unità statistica: singolo oggetto della popolazione;
- Variabili: caratteristiche osservate negli individui;
- Campione: sottoinsieme popolazione, analizzato dove non è possibile analizzare intera popolazione (se ciò è possibile censimento, basta solo stat descrittiva, no inferenza).
Schema: popolazione campionamento campione inferenza (calcolo probabilità) popolazione.
Vettori, dataset, manipolazione dati
Liste di numeri (vettori), comandi principali:
c(1,2,3,4)creo vettore c, componenti 1,2,3,4;1:nlista numeri interi da 1 a n;rep(3,times=5)orep(3,5)ripete 5 volte numero 3;seq(3,27,by=2)oseq(3,27,2)sequenza da 3 a 27 in salti di 2, se non specifico sottintendo by=1;x[n]seleziono componente vettore in posizione n;x[n:m]seleziono componenti da n a m;x[x==n],x[x>0], … seleziono componenti vettore x uguali a n, maggiori di 0, ecc.
Dataframe (dataset): insieme di dati in R, quasi sempre sotto forma di matrice individui/unità statistiche/osservazioni nelle righe, variabili rilevate nelle colonne.
Tipi di variabili
- Quantitative o numeriche: possono essere misurate;
- Qualitative o categoriali o fattori: non misurabili ma consentono di dividere individui in categorie;
- Binarie o dicotomiche: qualitativa con due scelte (modalità, livelli), es. si-no, 0-1 (finta numerica).
Manipolazione dataset, comandi principali
View()visualizza dataset,help()o?informazioni su dataset,summary()riassunto variabili considerate,str()elenco osservazioni per ogni variabile,dim()dimensioni dataset righe*colonne.- Considero dataset iris:
iris[2,3]: seleziona dato nella riga 2 e colonna 3;iris[2,]eiris[,3]selezionano tutta la riga o colonna; attach(iris): inserisco iris da lista ricerca di R per trovare facilmente variabili, comandi più facili; finita l’analisi usodetach(iris)per rimuoverlo;iris[iris$Species=="setosa",](VIRGOLA): seleziono componenti della specie setosa (con attach non serve iris$), posso creare sotto-dataset assegnando es a variabile setosa;- Togliere colonna: dopo virgola aggiungo
–c(n). Sepal.Length[iris$Species=="versicolor"]: seleziono da vettore lunghezza sepali componenti della specie versicolor;count(iris[iris$Petal.Length>=n&Petal.Length<=m,])(VIRGOLA): conto individui con lunghezza petali compresa tra n e m.
Dati mancanti: indicati con NA (not available). DF[!is.na(n)]: seleziono righe senza NA sulla colonna n del dataframe.
Leggere file excel: require(readxl) read.excel("dataset.xlsx", sheet=1): leggo il foglio 1 del file excel sulla console; per saltare es prima riga (titoli) aggiungo skip=1.
Tabelle a più entrate, es Titanic
Comando apply(): applico a una componente (variabile) di una matrice/array un'operazione (es somma, media). Analizzare dati solo di una variabile e sommarli, es Survived (4° componente) apply(Titanic,4,sum). Relazione tra due variabili, es Class-Survived (1°-4° componente) apply(Titanic,c(1,4),sum).
Statistica descrittiva
Statistica descrittiva: lettura dati per l’interpretazione strumenti specifici in base a domanda di ricerca.
View(verlander) esamino dataset su lanci (individui) effettuati da Justin Verlander, giocatore baseball, 12 variabili rilevate.
Analisi 1 fattore
In che modo JV lancia più spesso? Variabile pitch_type (tipo lancio).
- Metodo numerico:
xtabs(~pitch_type,data=verlander)tabella di frequenza, frequenze assolute; per avere percentuali (confrontare dati con quelli di altri giocatori) usorowPerc(xtabs(...)); - Metodo grafico:
barchartGC(~pitch_type,data=verlander,main="Titolo")grafico a barre (≠ istogramma, variabili quantitative), in ascissa modalità variabile, altezza barre indica frequenza; per avere percentuali aggiungo comandotype="percent".
Relazione tra 2 fattori
Tipo di lancio (pitch_type) dipende da mano battitore (batter_hand)? pitch_type usata per spiegare dipende andamento di batter_hand, quindi detta variabile esplicativa, mentre batter_hand detta variabile risposta o di interesse. Lanci divisi in 2 gruppi in base a mano battitore.
- Metodo numerico:
xtabs(~batter_hand+pitch_type,data=verlander)orowPerc()tabella a due entrate, nelle righe variabile esplicativa (scritta prima), nelle colonne variabile risposta (scritta dopo); - Metodo grafico:
barchartGC(~batter_hand+pitch_type,data=verlander,main="Titolo",type="percent").
Variabili numeriche
(es. fastest) descrivere posizione/centro, dispersione, forma distribuzione valori.
Posizione e dispersione metodi numerici
Comando generale favstats(~fastest,data=m111survey).
- Media: centro distribuzione valori; indica media campionaria, che deve rappresentare media popolazione μ; comando
mean(); - Deviazione standard (scarto quadratico medio): dispersione dati attorno alla media; maggiore s implica maggiore dispersione; maggioranza dati (68%) nell’intervallo (ampiezza 2s); radice serve a mantenere stessa scala dati; comando
sd(); - Mediana: dato insieme valori ordinati (comando
sort()) è pari al valore esattamente a metà (se n dispari; se pari mediana = media 2 valori centrali); 50% dati inferiori a essa, 50% superiori (detta 50° quantile); indica centro distribuzione ma non tiene conto dei valori numerici; comandomedian(); - Quantili/percentili: simili a mediana ma riferiti a percentuali diverse; comando
quantile(~variabile, data=,prob=c(0.1,0.2…)); - Se dividono in 4 distribuzione detti Quartili Q1, Q2 = mediana, Q3 (Q1 divide primo 25% valori dal restante 75%, e così via);
- Scarto interquartile: include 50% centrale dati, più grande = maggiore dispersione; comando
iqr().
Metodi grafici
- Istogramma:
histogram(~variabile,data=...,type="density")in ascissa valori numerici divisi in classi (es. velocità 100-120 mph), in ordinata densità di osservazioni della classe = quanto dati sono concentrati, frequenza osservazioni classe data da area barra. Somma aree rettangoli = 1. Titolo grafico ed etichetta asse x: aggiungo comandimain=""exlab="". Ampiezza rettangolibreaks=seq(), se non specificata impostata automaticamente. - Density plot:
densityplot(~variabile,data=...)idea centralità, dispersione, dati strani/anomali (outliers). - Box-and-whisker plot (scatola e baffi) o Boxplot:
bwplot(~variabile,data=...)idea distribuzione quantili, lato sinistro scatola Q1, puntino mediana, lato destro Q3, scatola indica 50% centrale dati. Baf includono datirestanti (25%+25%) arrivando a valore min e max, ma escludono outliers, evidenziati con pallino vuoto. Se mediana è al centro scatola e baffi uguali distribuzione abbastanza simmetrica.
Descrivere forma distribuzione
- Numero di mode (picchi) unimodale, bimodale, trimodale;
- Simmetria simmetrica o asimmetrica;
- Asimmetria (skewness) presenta coda lunga a sinistra o destra (left o right skewed).
Relazione centralità (media, mediana) e simmetria/asimmetria: se distrib simmetrica media = mediana, se asimmetrica si separano. Mediana più robusta della media: in caso di osservazioni estreme media sarà falsata (tenderà a seguirle), ma non la mediana, che non dipende da valori numerici.
Regola empirica per approfondire interpretazione dati. Se distribuzione dati è a forma di campana = simmetrica e unimodale allora:
- 68% dati incluso nell’intervallo media ± s
- 95% dati incluso nell’intervallo media ± 2s
- 99,7% dati incluso nell’intervallo media ± 3s
Vale anche se non sappiamo molto sui dati. Comando EmpRuleGC(mean=40,sd=3,xlab="").
Z-score: standardizzare dato (x) per individuare outliers e confrontare dati di insiemi diversi.
Relazione fattore e variabile numerica: capire se variabile numerica (variabile risposta) dipende da un fattore (variabile esplicativa), se fattore è influente; esso divide in gruppi popolazione (es. maschi e femmine), variabile quantitativa studiata nei gruppi separati.
- Metodo numerico:
favstats(fastest~sex, data=m111survey)= esprimo fastest in funzione di sex; - Metodi grafici:
bwplot(fastest~sex,data=m111survey,main="titolo",xlab="assex",ylab="assey"); histogram(~fastest|sex,data=m111survey,type="density"...)idea di aver diviso grafico in base a variabili esplicative;densityplot(~fastest|sex,data=m111survey,...);
Posizione grafici: layout=c(1,2) = 1 colonna e 2 righe = un grafico sopra l’altro.
Inferenza
Inferenza: utilizzare dati raccolti attraverso campione (particolare) per descrivere popolazione (generale).
Esempio relazione tra 2 fattori sex e seat: in base a dati raccolti si può dire che c’è effettivamente relazione, tutti studenti hanno preferenza sul posto in base al sesso, oppure relazione leggera, dovuta al caso? (es. delfini).
Problema di verifica ipotesi due ipotesi opposte:
- H0 Ipotesi nulla: nessuna relazione tra variabili (percentuale scelta posto maschi = femmine);
- Ha Ipotesi alternativa: c'è relazione tra variabili (maschi preferiscono sedersi in un posto, femmine in un altro).
Compatibilità dati-H0: simulare esperimenti ipotizzando sia vera H0, poi contare quante volte valore simulazione supera quello sperimentale. Percentuale ottenuta detta P-value, più piccolo è minore è compatibilità dati-H0.