Test d ipotesi sulla media Monica Marabelli 4 Dicembre 2015
Riassumendo l esercitazione precedente Nella lezione precedente abbiamo visto che la media campionaria puó essere un buon stimatore del valore atteso nella popolazione da cui provengono i dati. Inoltre possiamo anche misurare la variabilitá del nostro stimatore attraverso gli intervalli di confidenza.
Verifica di ipotesi Si fanno delle ipotesi su una caratteristica di una popolazione oggetto di studio e si verificano sulla base di osservazioni campionarie. H 0 ipotesi nulla H 1 ipotesi alternativa
Verifica d ipotesi sulla media - test bidirezionale L ipotesi nulla di un test d ipotesi a due code sulla media puó essere formulata nel modo seguente: H 0 : µ = µ 0 dove µ 0 é un valore ipotizzato della vera media della popolazione µ. L ipotesi alternativa é: H 1 : µ µ 0
Verifica d ipotesi sulla media - test unidirezionale L ipotesi nulla e l ipotesi alternativa di un test d ipotesi a una coda sulla media possono essere formulate nei modi seguenti: H 0 : µ µ 0 H 1 : µ > µ 0 oppure H 0 : µ µ 0 H 1 : µ < µ 0
Test d ipotesi sulla media con varianza nota: test z Il test per saggiare H 0 é: z = x µ 0 σ n dove x = media campionaria µ 0 = media ipotizzata della popolazione σ n = errore standard della media campionaria
Esercizio 1 Supponiamo che il peso medio dei bambini alla nascita nel 2014 sia stato 3.3 Kg. In un campione di 35 nati in un ospedale quest anno il peso medio dei bambini é 3.0 Kg. Assumendo che la deviazione standard della popolazione sia 1 Kg, a livello di significativitá dello 0.05 si puó rifiutare l ipotesi nulla che la media del peso dei bambini nati quest anno non differisce da quella dei nati nel 2014?
L ipotesi nulla H 0 é che la media µ = µ 0 = 3.3 (test bidirezionale) Inseriamo i dati in R e calcoliamo z. xbar <- 3 mu0 <- 3.3 sigma <- 1 n <- 35 z <- (xbar - mu0)/(sigma/sqrt(n)) z [1] -1.774824
Calcoliamo i valori critici z a livello di significativitá del 5% alpha <- 0.05 z_cr <- qnorm(1-alpha/2) c(-z_cr, z_cr) [1] -1.959964 1.959964
Rappresentazione grafica del risultato x <- seq(-5, 5, by=0.1) plot(x, dnorm(x), xlab="z distribution", ylab="", type="l") abline(v=z, lty=2, col="blue") abline(v=c(-z_cr, z_cr), col="red")
Siamo nella regione di accettazione: non possiamo rifiutare l ipotesi nulla. In conclusione, la media del peso dei nati di quest anno é uguale all anno scorso. Invece di utilizzare il valore critico z, possiamo anche calcolare il P value. pval <- 2 * pnorm(z) # moltiplichiamo per 2 per tener conto delle due code pval [1] 0.07592696 Siccome il P value risulta 0.05 non possiamo rifiutare l ipotesi nulla: la media del peso dei bambini nati quest anno e nel 2014 é la stessa.
P value : interpretazione del risultato P value α Il test non é significativo: non posso rifiutare l ipotesi nulla P value < α Il test é significativo: rifiuto l ipotesi nulla e accetto l ipotesi alternativa
Test d ipotesi sulla media con varianza non nota: test t Si utilizza un test t a singolo campione. Il test per saggiare H 0 é: t = x µ 0 s n R peró ha una funzione per il calcolo del test t: t.test.
Esercizio 2 Consideriamo un dataset con i valori di espressione di 40 geni. Testiamo l ipotesi nulla che il valore medio di espressione dei geni sia 2000. H 0 : µ = 2000 H 1 : µ 2000 α = 0.05
Leggiamo i dati nel file expression.csv setwd("x:/") dati <- read.table("expression.csv", header=true, sep=",", dec=".") head(dati) gene esp 1 Gene1 2650 2 Gene2 1200 3 Gene3 1541 4 Gene4 1545 5 Gene5 1956 6 Gene6 1599
test t per singolo campione t.test(dati$esp, mu=2000) One Sample t-test data: dati$esp t = -2.174, df = 39, p-value = 0.03583 alternative hypothesis: true mean is not equal to 2000 95 percent confidence interval: 1715.028 1989.722 sample estimates: mean of x 1852.375 Il P value é < 0.05. Rifiutiamo quindi l ipotesi nulla: il valore medio di espressione dei geni non é pari a 2000.
Test d ipotesi sulla differenza tra due medie Spesso, dopo aver condotto degli esperimenti, si ha come scopo quello di confrontare due gruppi. I risultati possono essere riassunti sotto forma di medie per gruppo. Ma come facciamo a decidere se le differenze sono reali o solo dovute al caso? Per confrontare le medie di due gruppi si utilizzano: test t per gruppi indipendenti test t per dati accoppiati
Verifica d ipotesi sulla differenza tra medie E possibile saggiare l ipotesi che la differenza tra le medie delle due popolazioni sia: 1. uguale a zero (test bidirezionale); 2. maggiore o uguale a zero (test unidirezionale); 3. minore o uguale a zero (test unidirezionale).
Esercizio 3 Supponiamo di essere interessati al variare del colesterolo in funzione del sesso. Utilizziamo i dati nel file esami_sangue.csv setwd("y:/statistica") sangue <- read.table("esami_sangue.csv", header=true, sep=";", dec=",") colnames(sangue) [1] "id" "sesso" "piastrine" "GB" "GR" [6] "Glicemia" "Colesterolo" "HDLC" "LDL" "Trigliceridi" [11] "Uricemia" "Attfisica" "Caffé"
test t per gruppi indipendenti C é una differenza nel valore medio di colesterolo tra maschi e femmine? H 0 : µ d = 0 H 1 : µ d 0 I due gruppi (maschi e femmine) sono indipendenti. Inoltre, le varianze delle popolazioni non sono note. Per queste ragioni, svolgiamo un test t per gruppi indipendenti. In particolare, effettuiamo un test bidirezionale.
Varianza dei due campioni Effettuiamo un test F per vedere se le varianze dei due gruppi sono uguali o diverse. H 0 : varianze uguali; H 1 : varianze diverse var.test(data=sangue, Colesterolo~sesso) F test to compare two variances data: Colesterolo by sesso F = 0.4035, num df = 19, denom df = 9, p-value = 0.09174 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.1095401 1.1620238 sample estimates: ratio of variances 0.4034732 Il P value 0.05. Il test non é significativo, quindi concludo che le varianze sono uguali.
Applichiamo il test t t.test(data=sangue, Colesterolo~sesso, var.equal =T) Two Sample t-test data: Colesterolo by sesso t = 0.3393, df = 28, p-value = 0.7369 alternative hypothesis:true difference in means is not equal to 0 95 percent confidence interval: -14.22878 19.87878 sample estimates: mean in group F mean in group M 207.345 204.520 Il P value 0.05. Il test non é significativo, quindi non rifiuto l ipotesi nulla e concludo che non c é differenza nel valore medio di colesterolo tra maschi e femmine.
Esercizio 4 Un ricercatore sta studiando l infarto miocardico e ha ipotizzato che l etá media di insorgenza della malattia nei maschi sia inferiore alle femmine. Ha quindi raccolto un campione di 50 malati (maschi e femmine) e ha registrato l etá all insorgere della malattia. Dai dati in suo possesso cosa puó concludere il ricercatore?
Formalizziamo il problema L ipotesi nulla é che la media dell etá dei maschi sia uguale o maggiore a quella delle femmine. H 0 : µ m µ f ovvero µ m µ f 0 L ipotesi alternativa é che la media dell etá dei maschi sia inferiore a quella delle femmine. H 1 : µ m < µ f ovvero µ m µ f < 0 Devo svolgere un test t per gruppi indipendenti unidirezionale.
Leggiamo i dati presenti nel dataset infarto.xls Dopo aver trasformato il file infarto.xls in formato.csv, settiamo la wd e importiamo i dati in R. infarto <- read.table("infarto.csv", header=f, sep=",", dec=".") str(infarto) data.frame : 50 obs. of 3 variables: $ V1: int 1 2 3 4 5 6 7 8 9 10... $ V2: Factor w/ 2 levels "F","M": 2 1 1 2 1 2 2 2 2 1... $ V3: int 60 40 50 67 45 82 45 67 32 67...
Assegniamo un nome alle variabili colnames(infarto) <- c("id","sex","age") Calcoliamo la media del colesterolo nei due gruppi aggregate(formula = age~sex, data = infarto, FUN = "mean" ) sex age 1 F 76.28 2 M 65.00
Il fattore sex Con str(infarto) abbiamo visto che sex é un fattore a due livelli, cosí ordinati: "F" e "M". Dobbiamo peró svolgere un test unidirezionale: considerando che l ipotesi nulla era H 0 : µ m µ f ovvero µ m µ f 0 dobbiamo ordinare la variabile sex in modo tale da avere prima i maschi e poi le femmine. infarto$sex <- factor(infarto$sex, levels=c("m","f")) str(infarto$sex) Factor w/ 2 levels "M","F": 1 2 2 1 2 1 1 1 1 2...
Effettuiamo il test F var.test(data=infarto, age~sex) F test to compare two variances data: age by sex F = 0.7805, num df = 24, denom df = 24, p-value = 0.5485 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.343946 1.771191 sample estimates: ratio of variances 0.7805088 P value 0.05. Il test non é significativo: le varianze risultano essere uguali.
Effettuiamo il test t t.test(data=infarto, age~sex, var.equal =T, alternative="less") Two Sample t-test data: age by sex t = -2.7969, df = 48, p-value = 0.003701 alternative hypothesis: true difference in means is less than 0 95 percent confidence interval: -Inf -4.515759 sample estimates: mean in group M mean in group F 65.00 76.28 P value < 0.05. Il test é significativo: rifiuto l ipotesi nulla. La media dell etá dei maschi é inferiore a quella delle femmine.
Esercizio 5 E stato effettuato uno studio per testare l efficacia dell ipnotismo per ridurre il dolore. Il dolore é stato riportato per 8 soggetti prima e dopo trattamento attraverso una scala numerica. Si puó dire che dopo l ipnotismo il dolore é minore? Fai un test al 5%.
test t per dati accoppiati Ipotesi: H 0 : µ after µ before ovvero µ after µ before 0 H 1 : µ after < µ before ovvero µ after µ before < 0 Dobbiamo svolgere un test unidirezionale sulla differenza tra medie, ma i dati provengono da due campioni non indipendenti. Effettuiamo quindi un test t per dati accoppiati.
Leggiamo i dati contenuti nel file pain.txt dati <- read.table("pain.txt", header=t, sep="\t", dec=".") dati Subject Before After 1 A 6.6 6.8 2 B 6.5 2.4 3 C 9.0 7.4 4 D 10.3 8.5 5 E 11.3 8.1 6 F 8.1 6.1 7 G 6.3 3.4 8 H 11.6 2.0
Effettuiamo il test t t.test(dati$after, dati$before, paired =T, alternative ="less", conf.level = 0.95) Paired t-test data: dati$after and dati$before t = -3.0359, df = 7, p-value = 0.009478 alternative hypothesis: true difference in means is less than 0 95 percent confidence interval: -Inf -1.174823 sample estimates: mean of the differences -3.125 P value < 0.05, quindi rifiuto H 0. Questo significa che µ d < 0 e che dopo l ipnotismo il dolore é minore.