Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Basi per Statistica Inferenziale in Matlab Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Introduzione Stime puntuali ed intervalli Introduzione Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Statistica Inferenziale Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Motivazioni Fare inferenze circa un insieme di elementi a partire da un insieme di osservazioni Es: inferire il risultato di un referendum dagli exit poll inferenza → asserzioni motivate (risultato referendum) insieme di elementi → popolazione (tutti i votanti) insieme di osservazioni → campione (persone intervistate) Statistica inferenziale ed analisi dei dati Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Analisi dei dati Dati → campione Es: tempi di esecuzione di due algoritmi su un certo numero n di istanze di problema inferenza → decidere quale dei due algoritmi e' piu' veloce insieme di elementi → tutte le possibili istanze insieme di osservazioni → tempo di esecuzione sulle istanze n Statistica inferenziale ed analisi dei dati Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Example (Confronto Algoritmi) Stima Puntuale ed intervalli di condenza Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Stima Puntuale Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Stimare parametri di distribuzioni parzialmente note Dato un campione x1 , · · · , xn di valori Voglio stimare i parametri di una distribuzione che assumo sia la distribuzione della mia popolazione Es: assumo la distribuzione Gaussiana con media e varianza non note Voglio stimare la media e la varianza della mia distribuzione Stima puntuale in matlab Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Stimare media e varianza in matlab X = vettore di dati mean(X) = stimatore della media var(X) = stimatore corretto della varianza Campionamento dati Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Campionamento da distibuzioni note rand(M,1) estrae M campioni dalla distribuzione uniforme tra (0,1) normrnd(MU,SIGMA,M,1) estrae M campioni dalla distribuzione normale con media MU e deviazione standard SIGMA Esempio stima puntuale Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Example (Stima media e varianza di campioni) X = vettore di dati X = normrnd(0,1,N,1) mean(X) = stimatore della media std(X) = stimatore corretto della deviazione standard Intervalli di condenza Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Motivazione La stima puntuale non ci dice il valore vero del parametro Vogliamo che la stima ci dia un valore ragionevolmente vicino a quello vero Intervallo di condenza: valore percentuale di condenza che il parametro appartenga all'intervallo stimato Valutare intervalli di condenza per la media Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Valutare intervalli di condenza per la media Vogliamo valutare l'intervallo di condenza relativo alla media dei nostri dati Possiamo calcolare intervallo di condenza assumendo di conoscere la distribuzione da cui i dati sono campionati Per grandi campioni (n>=30) possiamo assumere che la popolazione abbia approssimativamente una particolare distribuzione detta distribuzione t di student Quindi nella pratica, per n grande (>=30) assumiamo che i campioni provengono da tale distribuzione e calcoliamo l'intervallo di condenza in base a questo Intervalli di condenza in matlab utilizzando ttest Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Come calcolare un intervallo di condenza in matlab Esistono primitive apposite per calcolare intervalli di condenza ztest(...) e ttest(...) eseguono dei test di ipotesi sulla media di un vettore di dati e calcolano anche l'intervallo di condenza ci concentriamo sul ttest(...) input: vettore di campioni necessario valore ipotetico della media (µ0 ) (0 se non specicato) livello di signicativita' ( 5% se non specicato) ipotesi del test (µ == µ0 se non specicata) ttest e test di ipotesi Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza test di ipotesi Ipotesi: asserzioni circa i parametri da stimare della distribuzione, (noi considereremo solo asserzioni circa la media) La media di una serie di campioni e' uguale/minore/maggiore ad un certo valore Formuliamo una ipotesi (e.g., µ < k ) che consideriamo vera no a prova cointraria detta ipotesi nulla Il test verica se le prove (e.g., caratteristiche dei campioni osservati) sono tali da rigettare l'ipotesi dato un livello di signicativita' α Livello di signicativita': piu' piccolo e' tale livello piu' dicile sara' rigettare l'ipotesi nulla, e saremo quindi piu' certi di non sbagliare quando la rigettiamo. Intervalli di condenza in matlab: ttest Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Output per ttest in matlab ttest(...) output: 0 se l'ipotesi non viene rigettata 1 altrimenti (restituito di default) p-value Intevallo di condenza calcolato sulla media reale: [x̄n − r ,x̄n + r ] ed r e' l'intervallo di condenza al livello di condenza 1 − α Visualizzazione dati: plot Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Cenni di graca 2-D plot(x,y) graco 2D di y rispetto ad x help plot per vedere tutte le possibili opzioni Example (graco di una distribuzione normale con media MU e varianza SIGMA) Es: x = [-10:0.01:10] y = normpdf(x,MU,SIGMA) plot(x,y) Visualizzazione dati: errorbar Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Cenni di graca 2-D molto simile a plot errorbar(x,y,u,l) graco 2D di y, y+u ed y-l rispetto ad x, help errorbar per vedere tutte le possibili opzioni Esercizi Basi per Statistica Inferenziale in Matlab Introduzione Stima Puntuale ed intervalli di condenza Intervalli di condenza Esercizi su intervalli di condenza Realizzare uno script per gracare i tempi di esecuzione degli algoritmi bruteForce e branch and bound per il motif search incudendo gli intervalli di condenza al 95% completare la funzione processData.m, calcolando l'intervallo di condenza con ttest() fare un graco con errorbar utilizzando i dati in motifSearch.dat (load motifSearch.dat) (hint) per fare il graco utilizzare makeFigure.m