53
Laboratorio di Statistica Graziano Crasta a.a. 2006/2007 (ultima modifica: 8 febbraio 2007) Indice 1 Introduzione a R 2 1.1 Comandi base ............................................... 2 1.2 Data sets ................................................. 3 2 Probabilit` a 4 2.1 Dati random ............................................... 4 2.2 Variabili aleatorie discrete ........................................ 5 2.3 Variabili aleatorie continue ....................................... 7 3 Test statistici 14 4 Confronto di medie fra gruppi 20 4.1 Test di Fisher (F-test) .......................................... 20 4.2 Test t di Student (t-test) ......................................... 24 4.3 Test t per dati appaiati ......................................... 26 4.4 Procedure per confronti multipli .................................... 28 5 Confronto di proporzioni 30 5.1 Il caso di due gruppi: il test z ...................................... 30 5.2 Test del Chi-quadrato per la verifica di proporzioni .......................... 32 5.3 Test esatto di Fisher ........................................... 33 6 Metodi non parametrici 34 6.1 Test di Mann-Whitney .......................................... 34 6.2 Test di Wilcoxon ............................................. 36 7 Calcolo della potenza di un test 37 8 Verifica di relazione tra variabili 40 8.1 Regressione lineare ............................................ 40 8.2 Test del chi-quadrato di adattamento .................................. 43 9 Complementi 45 9.1 Variabili aleatorie ............................................. 45 9.2 Test t di Student ............................................. 46 9.3 Test F di Fisher .............................................. 46 10 Tabelle 48 10.1 Distribuzione Chi-quadrato ....................................... 48 10.2 Distribuzione normale standard ..................................... 49 10.3 Distribuzione t di Student ........................................ 49 10.4 Distribuzione F di Fisher ........................................ 50 10.5 Valori critici per il test SNK ....................................... 51 10.6 Valori critici per il test di Mann-Whitney (a due code) ........................ 52 10.7 Valori critici per il test di Wilcoxon (a due code) ........................... 53 1

Laboratorio di Statistica - mat.uniroma1.it · Laboratorio di Statistica 5 [1] 5 3 6 3 2 2 6 2 4 1 1 4 4 6 5 2 1 2 4 5 > # Simula 5 lanci di una moneta > sample(c("Testa", "Croce"),

Embed Size (px)

Citation preview

Laboratorio di Statistica

Graziano Crasta

a.a. 2006/2007 (ultima modifica: 8 febbraio 2007)

Indice

1 Introduzione a R 2

1.1 Comandi base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Data sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Probabilita 4

2.1 Dati random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2 Variabili aleatorie discrete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.3 Variabili aleatorie continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Test statistici 14

4 Confronto di medie fra gruppi 20

4.1 Test di Fisher (F-test) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.2 Test t di Student (t-test) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.3 Test t per dati appaiati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.4 Procedure per confronti multipli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5 Confronto di proporzioni 30

5.1 Il caso di due gruppi: il test z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.2 Test del Chi-quadrato per la verifica di proporzioni . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.3 Test esatto di Fisher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

6 Metodi non parametrici 34

6.1 Test di Mann-Whitney . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.2 Test di Wilcoxon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

7 Calcolo della potenza di un test 37

8 Verifica di relazione tra variabili 40

8.1 Regressione lineare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

8.2 Test del chi-quadrato di adattamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

9 Complementi 45

9.1 Variabili aleatorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

9.2 Test t di Student . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

9.3 Test F di Fisher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

10 Tabelle 48

10.1 Distribuzione Chi-quadrato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

10.2 Distribuzione normale standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

10.3 Distribuzione t di Student . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

10.4 Distribuzione F di Fisher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

10.5 Valori critici per il test SNK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

10.6 Valori critici per il test di Mann-Whitney (a due code) . . . . . . . . . . . . . . . . . . . . . . . . 52

10.7 Valori critici per il test di Wilcoxon (a due code) . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

1

2 G. Crasta

1 Introduzione a R

Home page del software statistico ’R’: http://www.R-project.orgCorso introduttivo in inglese: http://www.math.csi.cuny.edu/Statistics/R/simpleR

1.1 Comandi base

Inserire un vettore contenente l’altezza degli studenti (tutto cio che segue il simbolo ’#’ e un commento e vieneignorato da R):

> h <- c(178,166,185,192,170,174,177,168,161,179)

> h # visualizza h

[1] 178 166 185 192 170 174 177 168 161 179

> # metodo alternativo, premere ’invio’ su una nuova riga

> # per terminare l’immissione di dati

> h <- scan()

1: 178 166 185 192 170 174 177 168 161 179

11:

Read 10 items

Calcolo di alcune grandezze associate al vettore h:

> mean(h) # media

[1] 175

> var(h) # varianza

[1] 85.55556

> sd(h) # deviazione standard

[1] 9.249625

> median(h) # mediana

[1] 175.5

> length(h) # numero di elementi

[1] 10

> min(h) # minimo

[1] 161

> max(h) # massimo

[1] 192

> sum(h) # somma di tutti gli elementi

[1] 1750

> h[8] # elemento nr. 8

[1] 168

> h[3:6] # elementi nr. 3, 4, 5, 6

[1] 185 192 170 174

> h[h>170] # elementi maggiori di 170

[1] 178 185 192 174 177 179

Ricordiamo che, date n misurazioni h1, . . . , hn di una variabile aleatoria H , si definisce

mean(h) = media campionaria di H =1

n

n∑

i=1

hi =: H,

var(h) = varianza campionaria di H =1

n − 1

n∑

i=1

(hi − H)2 =: S2H .

Per avere informazioni sui comandi:

> ?mean # help in linea sulla funzione ’mean’

> apropos("mea") # quali funzioni hanno un nome che contiene ’mea’?

[1] "influence.measures" "kmeans" "weighted.mean"

[4] "mean" "mean.data.frame" "mean.Date"

[7] "mean.default" "mean.difftime" "mean.POSIXct"

[10] "mean.POSIXlt"

> # visualizza gli esempi per la funzione ’plot’

> example(plot)

Laboratorio di Statistica 3

In R si possono definire funzioni come segue.

> var.campionaria <- function(x)

+ n <- length(x)

+ if (n < 2) return

+ sum((x - mean(x))^2) / (n -1)

+

> var.campionaria(rivers)

[1] 243908.4

> # modifica la funzione con un editor esterno

> fix(var.campionaria)

1.2 Data sets

In R esistono alcuni data sets (cioe insiemi di dati) gia disponibili.

> data() # visualizza i data sets disponibili

> # data set del peso medio rispetto all’altezza delle donne americane

> # (altezza in pollici e peso in libbre)

> women

height weight

1 58 115

2 59 117

3 60 120

4 61 123

5 62 126

6 63 129

7 64 132

8 65 135

9 66 139

10 67 142

11 68 146

12 69 150

13 70 154

14 71 159

15 72 164

> women$height # visualizza solo la colonna del peso

[1] 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

> # rende accessibili i nomi delle colonne del data set

> attach(women)

> height

[1] 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

> # converte le altezze in cm

> altezza <- height * 2.54

> altezza

[1] 147.32 149.86 152.40 154.94 157.48 160.02 162.56 165.10 167.64 170.18

[11] 172.72 175.26 177.80 180.34 182.88

> # converte il peso in Kg

> peso <- weight * 0.45

> peso

[1] 51.75 52.65 54.00 55.35 56.70 58.05 59.40 60.75 62.55 63.90 65.70 67.50

[13] 69.30 71.55 73.80

> # traccia un plot del peso in funzione dell’altezza

> plot(altezza, peso)

> # calcola la retta di regressione

> lm(peso ~ altezza)

Call:

lm(formula = peso ~ altezza)

Coefficients:

(Intercept) altezza

4 G. Crasta

-39.3825 0.6112

> # la retta di regressione e’ y = 0.6112 * x -39.3825

> # (y=peso, x=altezza)

> # traccia la retta di regressione (sul plot precedente)

> abline(lm(peso ~ altezza))

> # rilascia il data set ’women’

> detach(women)

>

> # data set contenente la lunghezza dei principali fiumi americani

> rivers

[1] 735 320 325 392 524 450 1459 135 465 600 330 336 280 315 870

[16] 906 202 329 290 1000 600 505 1450 840 1243 890 350 407 286 280

[31] 525 720 390 250 327 230 265 850 210 630 260 230 360 730 600

[46] 306 390 420 291 710 340 217 281 352 259 250 470 680 570 350

[61] 300 560 900 625 332 2348 1171 3710 2315 2533 780 280 410 460 260

[76] 255 431 350 760 618 338 981 1306 500 696 605 250 411 1054 735

[91] 233 435 490 310 460 383 375 1270 545 445 1885 380 300 380 377

[106] 425 276 210 800 420 350 360 538 1100 1205 314 237 610 360 540

[121] 1038 424 310 300 444 301 268 620 215 652 900 525 246 360 529

[136] 500 720 270 430 671 1770

> summary(rivers) # riassunto dei dati

Min. 1st Qu. Median Mean 3rd Qu. Max.

135.0 310.0 425.0 591.2 680.0 3710.0

> # modifica le impostazione del device grafico

> # (una riga e due colonne)

> par(mfrow=c(1,2))

> hist(rivers) # istogramma

> boxplot(rivers) # boxplot

Histogram of rivers

Fre

quen

cy

0 1000 2000 3000 4000

020

4060

80

050

015

0025

0035

00

Figura 1: hist(rivers) e boxplot(rivers)

La funzione “summary” fornisce, per il vettore “rivers”, il minimo, il primo quartile, la mediana, la media, il terzoquartile e il massimo. La funzione “boxplot” rappresenta graficamente un rettangolo avente basi alla quota delprimo e terzo quartile (Q1 e Q3), piu un segmento intermedio che rappresenta la mediana. Sono rappresentatialtri due “baffi” che hanno come quota il minimo e il massimo dei dati compresi fra Q1 − 1.5 ∗ (Q3 − Q1) eQ3 + 1.5 ∗ (Q3 − Q1); gli outliers, cioe i punti esterni a questo intervallo, sono rappresentati da cerchietti (siveda la Figura 1).

2 Probabilita

2.1 Dati random

> # Simula 20 lanci di un dado

> sample(1:6, 20, replace=TRUE)

Laboratorio di Statistica 5

[1] 5 3 6 3 2 2 6 2 4 1 1 4 4 6 5 2 1 2 4 5

> # Simula 5 lanci di una moneta

> sample(c("Testa", "Croce"), 5, replace=TRUE)

[1] "Croce" "Croce" "Croce" "Testa" "Croce"

> # Estrazione del lotto

> # (notare che di default non c’e’ reimmissione)

> sample(1:90, 6)

[1] 70 37 74 54 68 15

Esempio 1. Simulare 200 lanci di un dado e disegnare l’istogramma delle frequenze.

> x <- sample(1:6, 200, replace=TRUE)

> barplot(table(x))

Esempio 2. Mano di poker da un mazzo di 52 carte. Rappresentiamo ciascuna carta attraverso due caratteri,il primo che ne rappresenta il valore (A, 2, . . . , 10, J, Q, K) e il secondo il seme (C = cuori, D = denari, F =fiori, P = picche).

> mazzo <- paste(rep(c("A", 2:10, "J", "Q", "K"), 4), c("C", "D", "F", "P"))

> mazzo

[1] "A C" "2 D" "3 F" "4 P" "5 C" "6 D" "7 F" "8 P" "9 C" "10 D"

[11] "J F" "Q P" "K C" "A D" "2 F" "3 P" "4 C" "5 D" "6 F" "7 P"

[21] "8 C" "9 D" "10 F" "J P" "Q C" "K D" "A F" "2 P" "3 C" "4 D"

[31] "5 F" "6 P" "7 C" "8 D" "9 F" "10 P" "J C" "Q D" "K F" "A P"

[41] "2 C" "3 D" "4 F" "5 P" "6 C" "7 D" "8 F" "9 P" "10 C" "J D"

[51] "Q F" "K P"

> sample(mazzo, 5)

[1] "3 C" "2 D" "A F" "9 C" "A D"

2.2 Variabili aleatorie discrete

Una variabile aleatoria (o variabile casuale, in inglese random variable) e, intuitivamente, il risultato numericoattribuito ad un esperimento casuale. Ad esempio, se lanciamo due monete non truccate, l’insieme dei risultatipossibili (detto anche spazio campionario dell’esperimento) e Ω = TT, TC, CT, CC (T = testa, C = croce).Consideriamo la variabile aleatoria X = numero di teste. Ad ogni elemento ω ∈ Ω possiamo associare unnumero X(ω) che rappresenta il numero di teste dell’evento ω. Nel nostro caso, X(TT ) = 2, X(TC) = 1,X(CT ) = 1, X(CC) = 0. Parleremo di variabile aleatoria discreta quando X puo assumere solo un numerofinito (o numerabile) di valori distinti. Tornando al nostro esempio, X e una variabile aleatoria discreta (puoassumere solo i valori 0, 1 o 2). In generale, si indica con P (X = x) la probabilita che la variabile aleatoriadiscreta X assuma il valore x. Sempre nel caso dell’esempio, P (X = 0) = 1/4, P (X = 1) = 1/2, P (X =2) = 1/4. Chiaramente, se la variabile aleatoria discreta X assume solo i valori x1, . . . , xk, si dovra avere

0 ≤ P (X = xi) ≤ 1 per ogni i e∑k

i=1P (X = xi) = 1. Si definiscono le seguenti quantita:

• densita di probabilita: P (X = x)

• funzione di ripartizione: P (X ≤ x) =∑

xi≤x

P (X = xi)

• valore atteso (o media): µ = E(X) =k∑

i=1

xi · P (X = xi)

• varianza: σ2 = Var(X) = E[

(X − E(X))2]

=

k∑

i=1

(xi − µ)2 · P (X = xi) = E(X2) − E(X)2

Definizione 3 (Variabili aleatorie indipendenti). Le variabili aleatorie X1, . . . , Xn si dicono indipendenti se,per ogni scelta di intervalli I1, . . . , In, si ha

P (X1 ∈ I1, . . . , Xn ∈ In) = P (X1 ∈ I1) · · ·P (Xn ∈ In).

(Il termine a primo membro indica la probabilita che si abbia, contemporaneamente, X1 ∈ I1, X2 ∈ I2, . . . ,Xn ∈ In.)

6 G. Crasta

In altri termini, gli eventi X1 ∈ I1, . . . , Xn ∈ In sono indipendenti, cioe la probabilita che accada uno diessi non dipende dal fatto di sapere qualche cosa legata agli altri eventi (se sono accaduti, se non sono accaduti,o non sapendo nulla).

Descriveremo brevemente le principali variabili aleatorie discrete.

Variabile aleatoria di Bernoulli. Assume solo i due valori 1 e 0, con probabilita rispettivamente p e 1 − p,con 0 ≤ p ≤ 1. Si scrive anche X ∼ Ber(p). Abbiamo che

E(X) = p, Var(X) = p(1 − p) .

Variabile aleatoria Binomiale. Si chiama esperimento Bernoulliano un esperimento casuale che consistein un insieme di prove ripetute, ciascuna delle quali e descritta da una variabile aleatoria di Bernoulli Xi ∈Ber(p), dove p e lo stesso per tutte le prove, e tali che i risultati delle prove siano indipendenti. In genere, ilvalore X = 1 e detto successo, mentre il valore X = 0 e detto insuccesso. Se ripetiamo n volte l’esperimentocasuale, vogliamo determinare la probabilita di ottenere k successi. La variabile aleatoria che conta il numerodi successi in n prove (la cui probabilita di successo e p) si chiama Binomiale, e si scrive X ∼ Bin(n, p). Si puodimostrare che, se X ∼ Bin(n, p), allora

P (X = k) =

(

nk

)

pk(1 − p)n−k, k = 0, 1, . . . , n,

dove(

nk

)

=n!

k!(n − k)!=

n(n − 1) · · · (n − k + 1)

k(k − 1) · · · 2 · 1e chiamato coefficiente binomiale. Si puo verificare che

E(X) = n p, Var(X) = n p(1 − p) .

In R la funzione di ripartizione P (X ≤ x) per una variabile aleatoria binomiale X ∼ Bin(n, p) si calcola conpbinom(x, n, p). La densita di probabilita P (X = x) si calcola invece con dbinom(x, n, p). Chiaramente,se siamo interessati alla variabile aleatoria di Bernoulli basta prendere n = 1.

In generale, per tutte le variabili aleatorie di R che vedremo in seguito, il prefisso ’d’ indica la densita diprobabilita, mentre il prefisso ’p’ indica la funzione di ripartizione. Per quanto riguarda quest’ultima, l’opzione’lower.tail=FALSE’ serve a calcolare la probabilita dell’evento complementare P (X > x). Altri prefissi chevedremo piu avanti sono ’q’, che serve a calcolare i quantili della distribuzione, e ’r’, che serve ad estrarre numericasuali (random) secondo la distribuzione considerata.

> # probabilita’ di avere al piu’ 4 teste in 10 lanci

> # di una moneta

> pbinom(4, 10, 0.5)

[1] 0.3769531

> # probabilita’ di avere almeno 4 teste in 10 lanci

> # di una moneta

> pbinom(4, 10, 0.5, lower.tail=FALSE)

[1] 0.6230469

> # probabilita’ di avere esattamente 4 teste in 10 lanci

> # di una moneta

> dbinom(4,10,0.5)

[1] 0.2050781

Variabile aleatoria Geometrica. Viene utilizzata, ad esempio. per calcolare quanto tempo si deve aspettareper avere il primo successo in un esperimento Bernoulliano. Ha densita di probabilita

P (X = k) = p(1 − p)k k = 0, 1, 2, . . .

e si puo verificare che E(X) = (1 − p)/p, Var(X) = (1 − p)/p2. Si puo inoltre dimostrare che P (X > k) =(1 − p)k+1, per ogni k = 0, 1, 2, . . .

Esempio 4. Calcolare la probabilita che, in 10 lanci di un dado, non esca nessun 1.Se indichiamo con X la variabile aleatoria “numero del primo lancio in cui esce 1”, essa segue una distribuzionegeometrica di parametro p = 1/6. La probabilita richiesta vale P (X > 10) = (1 − p)11 = 0.1346. Usando Rpossiamo procedere come segue:

Laboratorio di Statistica 7

> # Metodo 1: P(X > 10)

> pgeom(10, 1/6, lower.tail = FALSE)

[1] 0.1345880

> # Metodo 2: 1 - P(X <= 10)

> 1-pgeom(10, 1/6)

[1] 0.1345880

Variabile aleatoria di Poisson. Viene utilizzata per descrivere in maniera approssimata processi di Bernoullicon eventi rari, cioe con probabilita di successo molto piccola. Piu precisamente, si puo dimostrare che se p evicino a zero e se n p = λ > 0 (con n grande), allora si ha approssimativamente

P (X = k) ≃ λk e−λ

k!, k = 0, 1, 2, . . .

Una variabile aleatoria X avente la densita di probabilita data a secondo membro e detta variabile aleatoria diPoisson di parametro λ > 0 e viene indicata con X ∼ Poi(λ). Si puo dimostrare che

E(X) = λ, Var(X) = λ.

Esempio 5. La probabilita di centrare un bersaglio e p = 0.001 per ogni colpo. Trovare la probabilita di centrareun bersaglio con due o piu pallottole se il numero di colpi sparati e n = 5000.In questo caso p e molto piccolo ed n e grande. Posto λ = n p = 5, e se X ∼ Poi(λ), la probabilita cercata valeapprossimativamente

P (X ≥ 2) = 1 − P (X < 2) = 1 − P (X = 0) − P (X = 1) = 1 − e−5 − 5 e−5 ≃ 0.9595723 .

In R si puo anche effettuare il calcolo esatto utilizzando la distribuzione binomiale.

> # Calcolo approssimato con la distribuzione di Poisson

> ppois(1, lambda = 5, lower.tail=FALSE)

[1] 0.9595723

> # Calcolo esatto con la distribuzione binomiale

> pbinom(1, 5000, 0.001, lower.tail=FALSE)

[1] 0.9596397

Altre variabili aleatorie discrete implementate in R sono quella binomiale negativa (nbinom) e quella ipergeo-metrica (hyper).

2.3 Variabili aleatorie continue

Una variabile aleatoria X si dice continua se esiste una funzione f : R → [0, +∞), detta densita di probabilitadi X , tale che

P (X ≤ x) =

∫ x

−∞

f(u) du . (1)

Chiaramente la densita f dovra essere una funzione non negativa, tale che il suo integrale generalizzato sullaretta reale sia pari a 1. Per una variabile aleatoria continua X non ha quindi senso calcolare la probabilitaP (X = x), in quanto essa e nulla. Cio che ha interesse e conoscere la probabilita che a ≤ X ≤ b. Da (1)abbiamo che

P (a ≤ X ≤ b) =

∫ b

a

f(u) du , a < b.

La probabilita P (a ≤ X ≤ b) sara dunque pari all’area compresa fra il grafico di f , l’asse delle x, e le retteverticali x = a e x = b.

Data una variabile aleatoria continua X con densita f , abbiamo che la sua media e la sua varianza sono dateda

µ = E(X) =

∫ ∞

−∞

x f(x) dx, σ2 = Var(X) = E[

(X − E(X))2]

=

∫ ∞

−∞

(x − µ)2 f(x) dx .

Anche per le variabili aleatorie continue si puo fornire la nozione di indipendenza, esattamente come abbiamofatto nella Definizione 3 per le variabili aleatorie discrete.

Vediamo ora un risultato di notevole importanza in probabilita. Date n variabili aleatorie X1, . . . , Xn sidefinisce media campionaria la variabile aleatoria

Mn =X1 + X2 + . . . + Xn

n. (2)

8 G. Crasta

Teorema 6 (Legge dei grandi numeri). Sia Xi, i = 1, 2, . . ., una successione di variabili aleatorie indipendenti,tutte con lo stesso valore atteso µ e la stessa varianza σ2, e sia Mn la media campionaria di X1, . . . , Xn. AlloraE(Mn) = µ, Var(Mn) = σ2/n, e

limn→∞

P (|Mn − µ| > ǫ) = 0 ∀ǫ > 0.

Vedremo piu avanti una formulazione piu precisa di questo risultato, nota come Teorema del Limite Centrale.

Descriveremo ora le principali variabili aleatorie continue.

Variabile aleatoria uniforme. Se [a, b] e un intervallo limitato, si dice variabile aleatoria uniforme la variabilealeatoria avente densita di probabilita costante in [a, b] e nulla fuori, cioe f(x) = 1/(b−a) se x ∈ [a, b], f(x) = 0se x 6∈ [a, b]. In R, densita e funzione di ripartizione si calcolano con dunif e punif.

Variabile aleatoria esponenziale. Ha densita f(x) = λ e−λ x se x ≥ 0, f(x) = 0 se x < 0, dove λ > 0 e unparametro. Si puo dimostrare che, se X e una variabile aleatoria esponenziale di parametro λ, allora

E(X) = 1/λ, Var(X) = 1/λ2 .

Funzioni di R: dexp e pexp.

Variabile aleatoria normale (o Gaussiana). E sicuramente la distribuzione di probabilita piu importantein statistica. La variabile aleatoria normale standard, denotata con Z ∼ N(0, 1), ha densita

f(x) =1√2π

e−x2/2 , x ∈ R .

−4 −2 0 2 4

0.0

0.1

0.2

0.3

0.4

dnor

m(x

, 0, 1

)

Figura 2: Densita della variabile normale standard Z ∼ N(0, 1)

Si puo dimostrare che E(Z) = 0 e Var(Z) = 1. In generale, si dice variabile aleatoria normale una variabilealeatoria X avente densita del tipo

f(x) =1

σ√

2πe−

(x−µ)2

2σ2 , x ∈ R ,

dove µ ∈ R e σ > 0 sono due parametri. In questo caso scriveremo X ∼ N(µ, σ2). Il significato dei parametriµ e σ e presto detto: si puo infatti verificare che

E(X) = µ, Var(X) = σ2 .

La dipendenza di f dai parametri µ e σ e mostrata in Figura 3. Una variazione di µ (a σ fissata) si traduce inuna traslazione del grafico lungo l’asse x. Al crescere di σ, invece, la distribuzione si appiattisce (e piu dispersa).I valori della funzione di ripartizione P (Z < x) della variabile normale standard Z ∼ N(0, 1) sono tabulati suqualsiasi testo di statistica (si veda la Tabella 1). Per simmetria, e sufficiente tabulare la funzione solo per x ≥ 0,in quanto P (Z < x) = 1−P (Z < −x). Quando si ha una variabile gaussiana X ∼ N(µ, σ2), per poter utilizzarei valori tabulati ci si riconduce ad una variabile normale standard tramite l’operazione di standardizzazione

Z =X − µ

σ∼ N(0, 1) .

Laboratorio di Statistica 9

−6 −4 −2 0 2 4 6

0.0

0.2

0.4

µ = − 3 µ = 2

−4 −2 0 2 4

0.0

0.2

0.4

σ = 1

σ = 2

Figura 3: Densita gaussiana al variare di µ e σ

x P (Z < x)

0.0 0.5000.1 0.5400.2 0.5790.3 0.6180.4 0.6550.5 0.6910.6 0.7260.7 0.7580.8 0.7880.9 0.8161.0 0.8411.1 0.8641.2 0.8851.3 0.9031.4 0.9191.5 0.933

x P (Z < x)

1.6 0.9451.7 0.9551.8 0.9641.9 0.9712.0 0.9772.1 0.9822.2 0.9862.3 0.9892.4 0.9922.5 0.9942.6 0.9952.7 0.9972.8 0.9972.9 0.9983.0 0.9993.1 0.999

−4 −2 0 2 4

0.0

0.1

0.2

0.3

0.4

P(Z < x)

x

Tabella 1: Funzione di ripartizione della normale standard

E chiaro che, essendo X = µ + σ Z, la probabilita P (a < X < b), con −∞ ≤ a < b ≤ +∞, puo essere calcolatadai valori tabulati della funzione di ripartizione di Z osservando che

a < X < b ⇐⇒ a < µ + σ Z < b ⇐⇒ a − µ

σ< Z <

b − µ

σ.

Eseguendo i calcoli con R non e necessaria l’operazione di standardizzazione.

Esempio 7. Sia X ∼ N(7, 4) (quindi µ = 7 e σ =√

4 = 2). Vogliamo calcolare P (3 < X < 9).Utilizzando la variabile standardizzata Z = (X − 7)/2, dobbiamo calcolare la probabilita P (−2 < Z < 1).Abbiamo che

P (−2 < Z < 1) = P (Z < 1) − P (Z < −2) = P (Z < 1) − [1 − P (Z < 2)] = P (Z < 1) + P (Z < 2) − 1.

Utilizzando la Tabella 1 si ha P (Z < 1) = 0.841, P (Z < 2) = 0.977, quindi P (−2 < Z < 1) = 0.818. Il calcolocon R e molto piu rapido:

> # probabilita’ P(3<X<9)

> pnorm(9, mean=7, sd=2) - pnorm(3, mean=7, sd=2)

[1] 0.8185946

> # con la standardizzata Z:

> pnorm(1)-pnorm(-2)

[1] 0.8185946

Sia X ∼ N(µ, σ2). In seguito utilizzeremo spesso le probabilita

P (µ − σ < X < µ + σ) = P (−1 < Z < 1) = 2 P (Z < 1) − 1 ≃ 0.683,

P (µ − 2σ < X < µ + 2σ) = P (−2 < Z < 2) = 2 P (Z < 2) − 1 ≃ 0.956,

P (µ − 3σ < X < µ + 3σ) = P (−3 < Z < 3) = 2 P (Z < 3) − 1 ≃ 0.997,

che con R possono essere facilmente calcolate come segue:

10 G. Crasta

> pnorm(1)-pnorm(-1)

[1] 0.6826895

> pnorm(2)-pnorm(-2)

[1] 0.9544997

> pnorm(3)-pnorm(-3)

[1] 0.9973002

E istruttivo osservare che il 95.6% della probabilita che si realizzi un evento gaussiano e compresa entro duedeviazioni standard dalla media, mentre la probabilita che l’evento si realizzi ad oltre tre deviazioni standard epraticamente nulla (inferiore allo 0.3%).

Il problema inverso rispetto a quello del calcolo delle aree e il seguente. Dato un numero 0 ≤ p ≤ 1, vogliamodeterminare un numero z ∈ R tale che P (Z < z) = p. Un tale valore di z e detto quantile di ordine p delladistribuzione normale standard (si veda la Tabella 2). I quantili possono essere calcolati con R attraverso lafunzione ’qnorm(...)’; in maniera analoga, anche per le altre distribuzioni di probabilita la funzione quantile eidentificata in R dal prefisso ’q’.

P (Z < x) x

0.500 0.0000.600 0.2530.700 0.5240.800 0.8420.900 1.2820.910 1.3410.920 1.4050.930 1.4760.940 1.5550.950 1.645

P (Z < x) x

0.955 1.6950.960 1.7510.965 1.8120.970 1.8810.975 1.9600.980 2.0540.985 2.1700.990 2.3260.995 2.5760.999 3.090

Tabella 2: Funzione quantile della normale standard

Spesso, dato p ∈ (0, 1), siamo interessati a determinare z > 0 tale che P (|Z| < z) = P (−z < Z < z) = p,oppure P (|Z| > z) = p. Poiche

P (|Z| < z) = 2P (Z < z) − 1, P (|Z| > z) = 1 − P (|Z| ≤ z) = 2[1 − P (Z ≤ z)]

avremo che

P (|Z| < z) = p ⇐⇒ P (Z < z) =1 + p

2,

P (|Z| > z) = p ⇐⇒ P (Z < z) = 1 − p

2.

Esempio 8. Calcolare z > 0 tale che P (|Z| < z) = 0.99.

Per quanto detto sopra, abbiamo che P (|Z| < z) = 0.99 se e solo se P (Z < z) = (1 + 0.99)/2 = 0.995. DallaTabella 2 ricaviamo che z = 2.576. Utilizzando R si puo procedere come segue:

> # calcolo del quantile di ordine p=0.995

> qnorm(0.995)

[1] 2.575829

L’importanza della variabile aleatoria normale e dovuta anche al seguente risultato che riguarda la distribuzionedella media di variabili aleatorie indipendenti.

Teorema 9 (Teorema del Limite Centrale). Siano X1, X2, . . . , Xn, . . . , variabili aleatorie indipendenti, tuttecon lo stesso valore atteso µ e la stessa varianza σ2, e sia

Mn =X1 + . . . + Xn

n, n = 1, 2, . . .

Allora

limn→+∞

P

(

a ≤ Mn − µ

σ

√n ≤ b

)

= P (a ≤ Z ≤ b),

dove Z ∼ N(0, 1).

Laboratorio di Statistica 11

Osserviamo che le variabili aleatorie Xi possono essere distribuite con qualsiasi legge (purche abbiano tuttestessa media e stessa varianza); non e cioe necessario che siano anch’esse variabili aleatorie normali (in tal casosi avrebbe Mn−µ

σ

√n ∼ N(0, 1) per ogni n = 1, 2, . . .). In particolare, il Teorema del Limite Centrale dice

che, per n abbastanza grande (tipicamente e sufficiente n > 30, purche il fenomeno osservato non sia troppoasimmetrico), la media Mn di n variabili aleatorie indipendenti X1, . . . , Xn, aventi stessa media µ e stessavarianza σ2, si distribuisce approssimativamente come una variabile aleatoria normale di media µ e varianzaσ2/n, cioe

Mn ≃ N(µ, σ2/n).

Vedremo che questo risultato rivestira notevole importanza nei test statistici.

n = 1

1 2 3 4 5 6

0.00

0.10

0.20

n = 2

1 2 3 4 5 6

0.00

0.15

0.30

n = 3

1 2 3 4 5 6

0.0

0.1

0.2

0.3

0.4

n = 5

1 2 3 4 5 6

0.0

0.2

0.4

n = 10

1 2 3 4 5 6

0.0

0.2

0.4

0.6

n = 50

1 2 3 4 5 60.

00.

51.

01.

5

Figura 4: Densita di Mn = media del lancio di n dadi

Facciamo ora una simulazione con R per “verificare” il Teorema del Limite Centrale. Fissato un intero n ≥ 1,siano X1, . . . , Xn variabili aleatorie che rappresentano il risultato del lancio di n dadi (Xi = lancio dell’i-esimodado). In Figura 4 e rappresentata la densita di Mn, per diversi valori di n, in una simulazione con 5000ripetizioni del lancio di n dadi. La linea continua rappresenta la densita della variabile aleatoria normaleZ ∼ N(µ, σ2/n), dove

µ =1

6

6∑

k=1

k = 3.5, σ2 =1

6

6∑

k=1

(k − µ)2 ≃ 2.917

sono rispettivamente la media e la varianza delle Xi. Il codice della simulazione e il seguente:

> mediedado <- function(n = c(10), nrep = 1000)

+ sigma = sqrt(sum(seq(-2.5, 2.5, 1)^2)/6)

+ for (i in n)

+ m <- matrix(sample(1:6, i*nrep, replace=TRUE), nrep, i)

+ somme <- apply(m, 1, sum)

+ medie <- somme/i

+ nb = min(i, 10)

+ ym = dnorm(0, 0, sigma/sqrt(i))

+ hist(medie, breaks=seq(1-1/(2*nb), 6+1/(2*nb), 1/nb), prob=TRUE,

+ ylim = c(0, ym),

+ col="gray", xlab="", ylab="", main=paste("n = ", i))

+ curve(dnorm(x, 3.5, sigma/sqrt(i)), add=TRUE)

+

+

> par(mfrow = c(2,3))

> mediedado(n = c(1, 2, 3, 5, 10, 50), nrep=5000)

Esempio 10. Un dado viene lanciato 50 volte. Determinare la probabilita che la media dei punteggi sia compresafra 3 e 4.

12 G. Crasta

Poiche n = 50 e abbastanza grande, la media Mn si distribuisce approssimativamente come una variabilealeatoria normale di media µ = 3.5 e varianza σ2/n, con σ2 ≃ 2.917. Abbiamo dunque

P (3 ≤ Mn ≤ 4) = P

(

3 − µ

σ

√n ≤ Mn − µ

σ

√n ≤ 4 − µ

σ

√n

)

≃ P

(

3 − µ

σ

√n ≤ Z ≤ 4 − µ

σ

√n

)

= P (|Z| ≤ 2.07) = 0.96 .

Concludiamo la discussione sulla variabile normale osservando che essa puo essere ottenuta come limite dellavariabile aleatoria binomiale. Piu precisamente, se X ∼ Bin(n, p), con n p > 5 e n(1− p) > 5, allora la variabile

X − n p√

n p (1 − p)≃ N(0, 1) (3)

si distribuisce approssimativamente come la variabile aleatoria normale standard.

Esempio 11. Calcolare la probabilita che in n = 1000 lanci di una moneta si ottengano fra le 470 e le 520 teste.Il processo aleatorio e descritto dalla variabile aleatoria X ∼ Bin(1000, 0.5). La probabilita richiesta e data da

P (470 ≤ X ≤ 520) =1

21000

520∑

k=470

(

1000k

)

.

E chiaro che eseguire il calcolo esatto (senza l’ausilio di un calcolatore) e un compito improbo. Utilizziamol’approssimazione (3). Abbiamo che

X − 500√250

≃ Z ∼ N(0, 1) .

Di conseguenza

P (470 ≤ X ≤ 520) ≃ P

(

470 − 500√250

≤ Z ≤ 520 − 500√250

)

= P (−1.897 < Z < 1.265) = 0.868.

Con R possiamo effettuare il calcolo come segue:

> pbinom(520, 1000, 0.5) - pbinom(469, 1000, 0.5)

[1] 0.8757779

Osserviamo che c’e una certa discrepanza fra il valore “esatto” calcolato con R e il valore approssimato 0.868.In realta questo e dovuto al fatto che e opportuno fare la seguente correzione. Poiche il numero di teste e intero,e piu corretta l’approssimazione

P (470 ≤ X ≤ 520) ≃ P

(

469.5 − 500√250

≤ Z ≤ 520.5 − 500√250

)

= P (−1.929 < Z < 1.296) = 0.876.

Con R si ottiene

> pnorm(20.5/sqrt(250)) - pnorm(-30.5/sqrt(250))

[1] 0.8757381

e vediamo che in effetti l’accordo col risultato esatto e molto buono.

Variabile Chi-quadrato. La variabile Chi-quadrato, denotata con χ2ν , dipende da un parametro intero positivo

ν, che ne identifica il numero di gradi di liberta. Quindi, per ogni ν, si ha una diversa variabile. La densita diprobabilita di χ2

ν e

f(x) = Cνxν/2−1e−x/2, se x > 0, f(x) = 0, se x ≤ 0,

dove Cν e una costante positiva determinata dalla condizione∫

Rf(x) dx = 1. Si puo dimostrare che

E(χ2ν) = ν, Var(χ2

ν) = 2ν .

L’andamento della densita di χ2ν per alcuni valori di ν e rappresentato in Figura 5. Nella Tabella 3 sono tabulati

i quantili della distribuzione per diversi valori di ν e di α. Ad esempio, P (χ210 < x) = 0.95 quando x = 18.31.

Con R tale quantile di ordine 0.95 puo essere calcolato col seguente comando:

> qchisq(0.95, 10)

[1] 18.30704

Laboratorio di Statistica 13

0 5 10 15 20

0.00

0.05

0.10

0.15

0.20

0.25

df = 3df = 5df = 10

Figura 5: Densita della variabile χ2ν con ν = 3, 5, 10 gradi di liberta

Densita, funzione di partizione e funzione quantile si ottengono in R rispettivamente con dchisq, pchisq eqchisq.L’importanza della variabile χ2

ν in statistica e dovuta principalmente al seguente risultato. Ricordiamo che, percampione (di ampiezza n) per un fenomeno casuale X (o per una popolazione con legge casuale X) si intendeuna n-pla X1, . . . , Xn di osservazioni indipendenti e tutte con la stessa legge: X1 ∼ X , . . . , Xn ∼ X .

Teorema 12. Siano date n variabili aleatorie indipendenti X1, . . . , Xn ∼ N(µ, σ2) (o, equivalentemente, uncampione di ampiezza n estratto da una popolazione normale di media µ e varianza σ2). Allora

(i)

n∑

i=1

(

Xi − µ

σ

)2

∼ χ2n;

(ii)(n − 1)S2

σ2=

1

σ2

n∑

i=1

(Xi − Mn)2 ∼ χ2

n−1,

dove Mn = (X1 + . . . + Xn)/n e la media campionaria, mentre

S2 =1

n − 1

n∑

i=1

(Xi − Mn)2

=1

n − 1

n∑

i=1

X2i − 1

n

(

n∑

i=1

Xi

)2

e la varianza campionaria. Inoltre, Mn e S2 sono variabili aleatorie indipendenti.

Variabile t di Student. Se Z ∼ N(0, 1) e W ∼ χ2ν sono variabili aleatorie indipendenti, allora la trasformazione

T =Z

W/ν

(

Z ∼ N(0, 1), W ∼ χ2ν

)

definisce la distribuzione t di Student con ν gradi di liberta. Il suo andamento e simile a quello della distribuzionenormale standard, ma ha una maggiore dispersione (le code sono piu alte rispetto a quelle della distribuzionenormale standard, si veda la Figura 6). Abbiamo che E(T ) = 0 mentre Var(T ) = ν/(ν − 2) per ν > 2 (seν = 1 o 2 la varianza non e definita). Densita, funzione di partizione e funzione quantile si ottengono in Rrispettivamente con dt, pt e qt.

−4 −2 0 2 4

0.0

0.1

0.2

0.3

0.4

Zt (df= 1 )t (df= 2 )t (df= 3 )

Figura 6: Confronto fra la normale standard e la distribuzione t di Student

14 G. Crasta

Se X1, . . . , Xn ∼ N(µ, σ2) sono n variabili aleatorie indipendenti, allora, per il Teorema 12, W = (n−1)S2/σ2 ∼χ2

n−1. Inoltre la variabile aleatoria Z = (Mn − µ)/(σ/√

n) e una normale standard, ed e indipendente da W .Di conseguenza

T =Z

W/(n − 1)=

(Mn − µ)/(σ/√

n)√

[(n − 1)S2/σ2]/(n − 1)=

Mn − µ

S

√n

si distribuisce come la variabile t di Student con ν = n − 1 gradi di liberta.

Variabile F di Fisher. Se Xm ∼ χ2m e Yn ∼ χ2

n sono indipendenti, il rapporto

F =Xm/m

Yn/n

definisce la distribuzione F di Fisher con m gradi di liberta al numeratore ed n gradi di liberta al denominatore.Si puo dimostrare che, se X e una siffatta variabile aleatoria di Fisher, allora

E(X) =n

n − 2(se n > 2), Var(X) =

2n2(n + m − 2)

m(n − 2)2(n − 4)(se n > 4).

In Figura 7 e rappresentata la distribuzione F con m = 6 gradi di liberta al numeratore ed n = 8 gradi diliberta al denominatore. Densita, funzione di partizione e funzione quantile si ottengono in R rispettivamentecon df, pf e qf.

0 1 2 3 4

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Figura 7: Distribuzione F di Fisher con m = 6 ed n = 8 gradi di liberta

Supponiamo di avere due campioni casuali di ampiezza rispettivamente n1 ed n2, estratti da due popolazioninormali distinte aventi varianze rispettivamente σ2

1 e σ22 . Se S2

1 e S22 indicano le varianze campionarie, per il

Teorema 12, abbiamo che

W1 = (n1 − 1)S21/σ2

1 ∼ χ2n1−1, W2 = (n2 − 1)S2

2/σ22 ∼ χ2

n2−1 .

Di conseguenza,

F =W1/(n1 − 1)

W2/(n2 − 1)=

[(n1 − 1)S21/σ2

1 ]/(n1 − 1)

[(n2 − 1)S22/σ2

2 ]/(n2 − 1)=

S21/σ2

1

S22/σ2

2

si distribuisce come la variabile di Fisher con ν1 = n1 − 1 gradi di liberta al numeratore e ν2 = n2 − 1 gradi diliberta al denominatore.

3 Test statistici

Nel paragrafo precedente abbiamo visto come, supponendo nota la legge che descrive un fenomeno, si possacalcolare la probabilita di vari eventi. La statistica si occupa invece del problema in un certo senso opposto:si vuole capire la legge che descrive un fenomeno, oppure il legame fra piu fenomeni, osservando i fenomenistessi accadere. A grandi linee, e senza entrare in dettagli, uno studio statistico si compone di diverse fasi:identificazione dello scopo principale, identificazione della popolazione, campionamento, descrizione dei dati,ipotesi, analisi statistica.

In questo e nei successivi paragrafi ci concentreremo sull’ultimo punto; analizzeremo cioe diversi tipi di teststatistici per la verifica di ipotesi. Questi test, una volta impostati correttamente, possono essere eseguiti con Rin maniera automatica. Vedremo, ad esempio, come usare le funzioni oneway.test per eseguire l’analisi dellavarianza ad una via, t.test per il test t di Student, chisq.test per il test del chi-quadrato, fisher.test peril test esatto di Fisher, etc. Quando si utilizza una di queste funzioni per eseguire un test, vengono stampate

Laboratorio di Statistica 15

un certo numero di informazioni, in buona parte dipendenti dal tipo di test eseguito; una informazione cheviene sempre restituita e il p-value (o “valore P”, in italiano) del test. Il p-value rappresenta la probabilitadi sbagliare affermando che il test ha rilevato una differenza reale fra i campioni. Quindi, un basso valore delp-value (inferiore, per esempio, a 0.05 oppure a 0.01, a seconda del livello di significativita del test cheabbiamo deciso di utilizzare), indica che il test ha rilevato una differenza reale fra i campioni. Viceversa, unvalore alto del p-value (superiore a 0.01, 0.05 o anche 0.1, a seconda del livello di significativita scelto) indicache il test non ha rilevato differenze significative fra i campioni. Il p-value puo anche essere interpretato comeil piu piccolo livello di significativita α per il quale i dati osservati indicano che l’ipotesi nulla dovrebbe essererifiutata.

In statistica, per campione (di ampiezza n) per un fenomeno casuale X (o per una popolazione con leggecasuale X) si intende una n-pla X1, . . . , Xn di osservazioni indipendenti e tutte con la stessa legge: X1 ∼ X ,. . . , Xn ∼ X . Questi n esperimenti casuali possono essere visti come n “copie” dello stesso esperimento astrattoX (o equivalentemente della stessa popolazione). Uno stimatore Tn per un parametro incognito τ e unafunzione Tn = Tn(X1, . . . , Xn) del campione; lo stimatore Tn si dice corretto, o non distorto (unbiased ininglese) se E(Tn) = τ . Ad esempio, abbiamo visto nel Teorema 6 che se µ = E(X), allora la media campionariaMn definita in (2) e uno stimatore corretto del parametro µ della popolazione, in quanto E(Mn) = µ. Lostimatore Tn si dice consistente o coerente (consistent in inglese) se la sua varianza tende a zero per n chetende a infinito, cioe se limn Var(Tn) = 0. Riprendendo l’esempio precedente, la media campionaria e ancheuno stimatore consistente della media vera µ, poiche limn Var(Mn) = limn σ2/n = 0, dove σ2 e la varianza diX . Si puo anche dimostrare che la varianza campionaria, definita da

S2n =

1

n − 1

n∑

i=1

(Xi − Mn)2 (4)

e uno stimatore corretto e consistente della varianza vera σ2. Nel seguito indicheremo anche con X la mediacampionaria, e con S2 la varianza campionaria, senza fare riferimento alla numerosita del campione.

Di particolare importanza per quanto diremo in seguito e il seguente teorema, che e una conseguenza deirisultati che abbiamo enunciato nel paragrafo precedente.

Teorema 13. Se X1, . . . , Xn e un campione casuale estratto da una popolazione X ∼ N(µ, σ2), allora

X − µ

σ

√n ∼ N(0, 1),

(n − 1)S2

σ2∼ χ2

n−1,X − µ

S

√n ∼ tn−1,

dove tn−1 indica la distribuzione t di Student con ν = n − 1 gradi di liberta.

Intervalli di confidenza. Supponiamo di avere uno stimatore per un certo parametro della popolazioneoggetto di studio. Per fissare le idee, supponiamo di avere una popolazione normale di media µ e varianzaσ2 (incognite). Dato un campione X1, . . . , Xn, sappiamo che la media campionaria X e stimatore corretto ecoerente della media µ della popolazione. Ad esempio, supponiamo di avere il seguente campione: 20.8, 18.8,20.7, 20.1, 24.7, 24.8, 22.4. La media campionaria vale 21.76. D’altra parte, questo numero da solo non cida nessuna indicazione sulla bonta della stima. Per ovviare a questo problema, spesso si ricorre ai cosiddettiintervalli di confidenza: si fornisce cioe un intervallo (a, b) che, idealmente, contenga il parametro da stimare (µin questo caso) e che sia relativamente piccolo. Operativamente, si fissa un certo livello di confidenza, ad esempiodel 95%, e si determina un intervallo (a, b) che contenga il parametro da stimare nel 95% dei casi. Il significatodi questa ultima frase e il seguente: se supponiamo di estrarre un gran numero di campioni indipendenti dallapopolazione assegnata, e se per ciascuno di questi campioni calcoliamo il relativo intervallo di confidenza al95%, allora il 95% di tali intervalli conterra il vero valore del parametro da stimare (µ).

Nell’esempio in questione, sappiamo che

T :=X − µ

S

√n ∼ tn−1, con n = 7, X = 21.76, S =

√5.31 = 2.30.

Indichiamo con t∗ := t0.025 = 2.47 il quantile di ordine 0.975 della distribuzione t si Student con ν = n − 1 = 6gradi di liberta, in modo che P (−t∗ ≤ T ≤ t∗) = 0.95. Dalla definizione di T avremo che

P

(

−t∗ ≤ X − µ

S

√n ≤ t∗

)

= 0.95,

che, con qualche manipolazione algebrica, si puo riscrivere come

P

(

X − t∗S√n≤ µ ≤ X + t∗

S√n

)

= 0.95.

16 G. Crasta

Se calcoliamo

a := X − t∗S√n

, b := X + t∗S√n

, (5)

abbiamo quindi che l’intervallo di confidenza richiesto e (a, b) = (19.63, 28.89), e si ha P (a ≤ µ ≤ b) = 0.95.Ricordiamo che l’interpretazione e la seguente: dato un campione casuale X1, . . . , X7 estratto dalla popolazioneX ∼ N(µ, σ2), e calcolati a e b tramite la formula (5), la probabilita che l’intervallo di confidenza (a, b) contengail parametro µ (che e un numero ben preciso, sebbene ignoto allo sperimentatore) e del 95%.

Per illustrare le quantita principali associate ad un test di ipotesi, partiamo da un esempio relativo ad uncaso giuridico. In un’aula di tribunale un imputato deve essere giudicato da una giuria, sulla base delle proveprodotte dalla difesa e dall’accusa. Le situazioni possibili sono le quattro riportate in tabella:

VeritaVerdetto Innocente ColpevoleAssolto corretto errore tipo IICondannato errore tipo I corretto

E chiaro che ci sono due possibilita di errore: condannare un imputato che, in realta, e innocente (errore ditipo I), oppure assolvere un imputato che, in realta, e colpevole (errore di tipo II).

Dal momento che la giuria non sa la verita, la sua decisione puo portare ad un errore. Si tratta di deciderecome procedere per “controllare” queste possibilita di errore. In uno stato di diritto l’errore piu grave consistesicuramente nel condannare un imputato innocente (errore di tipo I). L’innocenza, che in un test statisticoequivale all’ipotesi nulla H0, viene dunque presunta a meno che le prove non mostrino il contrario oltre ogniragionevole dubbio (il “ragionevole dubbio” e rappresentato, in statistica, dal livello di significativita del test,tipicamente α = 0.01 oppure α = 0.05). La probabilita di commettere un errore di tipo I e dunque controllatada α. Come abbiamo gia visto, il livello di significativita di un test viene fissato prima di eseguire il teststatistico. La probabilita di commettere un errore di tipo II viene indicata con β; si chiama potenza di un testla quantita 1− β, che in un test statistico rappresenta la probabilita di concludere che il trattamento e efficacequando questo e realmente efficace, o, equivalentemente, di concludere che esiste una differenza fra i campioniquando questa realmente esiste. Riassumiamo nella seguente tabella quanto abbiamo appena detto riguardo itest statistici:

Situazione realeConclusioni tratte Nessuna differenza (H0) Differenza (H1)Nessuna differenza corretto (1 − α) errore tipo II (β)Differenza errore tipo I (α) corretto (1 − β)

Ad ogni test statistico sono quindi associati i seguenti parametri:

• Livello di significativita: viene indicato con α (tipicamente α = 0.01 oppure α = 0.05). E la probabilita(massima) di errore di tipo I. Viene fissata a priori prima di eseguire il test.

• Livello di confidenza: e dato da 1−α. E la probabilita (minima) di concludere che l’ipotesi nulla H0 evera, cioe di concludere che un determinato trattamento e inefficace, quando questo e realmente inefficace.

• Potenza: viene indicata con 1−β. E la probabilita (minima) di rilevare una differenza reale di una certaentita. La quantita β rappresenta la dimensione dell’errore di tipo II.

Abbiamo gia detto che il livello di significativita α del test (e quindi anche il suo livello di confidenza) vengonofissati a priori, e dunque sono noti. La determinazione della potenza del test e invece piu complicata. Partiamoda un esempio semplice.

Esempio 14. Supponiamo di avere due monete: una regolare e una truccata. La moneta truccata ha unaprobabilita p = 0.6 che esca testa. Scegliamo a caso una delle due monete; vogliamo stabilire, osservando ilrisultato di un certo numero n di lanci, se la moneta e quella regolare oppure quella truccata.

Supponiamo di effettuare n = 100 lanci, e contiamo il numero k di teste. La proporzione campionaria di testesara data da p = k/n. Se la moneta e quella regolare, dobbiamo aspettarci che il numero di teste si distribuiscacome una distribuzione binomiale X ∼ Bin(100, 0.5), mentre se la moneta e truccata la distribuzione sara deltipo Y ∼ Bin(100, 0.6). Possiamo usare l’approssimazione (3) con la distribuzione normale, in quanto np en(1 − p) sono entrambi maggiori di 5:

X − 100 · 0.5√100 · 0.5 · 0.5

≃ N(0, 1),Y − 100 · 0.6√100 · 0.6 · 0.4

≃ N(0, 1),

Laboratorio di Statistica 17

cioe X ≃ N(50, 25) e Y ≃ N(60, 24). (Ricordiamo che X ∼ N(µ, σ2) significa che X e una variabile aleatorianormale di media µ e varianza σ2.) L’ipotesi nulla del nostro test sara del tipo

H0 = il numero di teste e ≤ 50

(si tratta quindi di un test ad una coda). Fissiamo il livello di confidenza α, ad esempio α = 0.05. Il quantile diordine 1 − α = 0.95 della distribuzione normale e zα = 1.645. Ne consegue che, se la moneta e quella regolare,nel 95% dei casi dovremmo avere un numero di teste inferiore a

Xα = 50 + zα

√25 ≃ 58.22 .

Calcoliamo ora la potenza del test 1−β (o, equivalentemente, l’errore di tipo II β). Dobbiamo dunque supporreche, nella situazione reale, valga H1, cioe che la moneta sia in effetti quella truccata. La domanda che ciponiamo e questa: assunto che la moneta sia quella truccata, qual e la probabilita di osservare un numero diteste maggiore del numero Xα calcolato sopra?

20 30 40 50 60 70 80

0.00

0.02

0.04

0.06

0.08

numero di teste in 100 lanci

monetaregolare

monetatruccata

1 − β

α= 0.05β= 0.359

20 30 40 50 60 70 80

0.00

0.02

0.04

0.06

0.08

numero di teste in 100 lanci

monetaregolare

monetatruccata

1 − β

α= 0.01β= 0.63

Figura 8: Potenza del test dell’Esempio 14

Chiaramente questa probabilita (1 − β) e data dall’area della regione in grigio nella Figura 8 a sinistra. Inparticolare, l’errore di tipo II β e dato dal valore della funzione di ripartizione della distribuzione relativaalla moneta truccata in corrispondenza del valore Xα. Per tale distribuzione, possiamo calcolare il valorestandardizzato

z =Xα − 60√

24≃ −0.363 .

Il valore di β e pari all’area della distribuzione normale standard che sta a sinistra di questo valore di z (lapotenza 1 − β e l’area che sta alla destra). Otteniamo dunque

β = P (Z < z) = P (Z < −0.363) = 1 − P (Z < 0.363) = 0.359.

La potenza del test e dunque 1 − β = 0.641, cioe circa del 64%.Se ripetiamo gli stessi calcoli con un livello di significativita α = 0.01, otteniamo β = 0.63 e dunque una potenza1−β = 0.37, cioe del 37% circa (si veda la Figura 8 a destra). Vediamo dunque che la potenza del test diminuisceal diminuire di α: tanto piu si vuole ridurre l’errore di tipo I, tanto piu aumenta l’errore di tipo II.Riportiamo qui sotto l’analisi di questo esempio condotta con R.

> # Esempio della moneta truccata

> moneta <- function(p1=0.5, p2=0.6, n=100, sig.level=0.05)

+ xmin <- 0.2*n

+ xmax <- 0.8*n

+ curve(dnorm(x, n*p1, sqrt(n*p1*(1-p1))), xmin, xmax,

+ xlab=paste("numero di teste in", n, "lanci"), ylab="")

+ # test z a una coda

+ z <- qnorm(1-sig.level)

+ # calcola il nr. massimo di teste al dato livello di significativita’

+ x <- p1*n + z*sqrt(n*p1*(1-p1))

+ # calcola l’errore di tipo II

+ beta <- pnorm(x, n*p2, sqrt(n*p2*(1-p2)))

+ curve(dnorm(x, n*p2, sqrt(n*p2*(1-p2))), x, xmax, add=TRUE,

18 G. Crasta

+ type = "h", col="gray")

+ lines(c(x,x), c(0,dnorm(x, n*p2, sqrt(n*p2*(1-p2)))), "l")

+ curve(dnorm(x, n*p2, sqrt(n*p2*(1-p2))), xmin, xmax, add=TRUE)

+ lines(c(xmin, xmax), c(0, 0), "l")

+ # arrotonda per la stampa

+ bp <- round(beta * 1000)/1000

+ text(40, 0.06, "moneta")

+ text(40, 0.055, "regolare")

+ text(72, 0.06, "moneta")

+ text(72, 0.055, "truccata")

+ text(x+1, 0.02, expression(1-beta), adj=0)

+ text(22, 0.07, expression(alpha), adj=1)

+ text(22, 0.07, paste("=", sig.level), adj=0)

+ text(22, 0.065, expression(beta), adj=1)

+ text(22, 0.065, paste("=", bp), adj=0)

+ print(paste("alpha =", sig.level))

+ print(paste("beta =", bp))

+ print(paste("potenza =", 1-bp))

+

> # due grafici accoppiati

> par(mfrow = c(1,2))

> moneta()

[1] "alpha = 0.05"

[1] "beta = 0.359"

[1] "potenza = 0.641"

> moneta(sig.level=0.01)

[1] "alpha = 0.01"

[1] "beta = 0.63"

[1] "potenza = 0.37"

Vediamo ora come varia la potenza del test al variare del numero di lanci. Ovviamente, dobbiamo aspettarciche tanto maggiore sara il numero di lanci, tanto maggiore sara l’accuratezza del test e quindi la sua potenza(in altri termini, fissato il livello di significativita α, al crescere di n aumentera la potenza del test e diminuiral’errore di tipo II β). Eseguiamo direttamente i calcoli con R utilizzato il codice riportato qui sotto. I risultatidel plot sono riportati in Figura 9.

0 100 200 300 400 500

0.2

0.4

0.6

0.8

1.0

numero di lanci

pote

nza

0.050.01

Figura 9: Potenza in funzione di n per α = 0.05 e α = 0.01, Esempio 14

> # calcola la potenza del test

> power.moneta <- function(p1=0.5, p2=0.6, n=100, sig.level=0.05)

+ # test z a una coda

+ z <- qnorm(1-sig.level)

+ # calcola il nr. massimo di teste al dato livello di significativita’

+ x <- p1*n + z*sqrt(n*p1*(1-p1))

+ # calcola l’errore di tipo II

+ power <- 1-pnorm(x, n*p2, sqrt(n*p2*(1-p2)))

+

> # plot della potenza

Laboratorio di Statistica 19

> plot.power.moneta <- function(p1=0.5, p2=0.6, nv=seq(10, 500, 10),

+ sig.levels=c(0.05, 0.01))

+ power <- power.moneta(n=nv, p1=p1, p2=p2, sig.level=sig.levels[1])

+ nmax <- max(nv)

+ plot(c(0,nmax), c(0,1), "n", xlab="numero di lanci",

+ ylab=paste("potenza (p=", p2, ")"))

+ leg.txt <- sig.levels[1]

+ for (i in 1:length(sig.levels))

+ power <- power.moneta(n=nv, p1=p1, p2=p2, sig.level=sig.levels[i])

+ lines(nv, power, "l", lty=i)

+ if (i > 1)

+ leg.txt <- c(leg.txt, sig.levels[i])

+

+ legend(0.6*nmax, 0.4, leg.txt, lty = c(1:length(sig.levels)))

+

> plot.power.moneta()

Le curve rappresentate in Figura 9 rappresentano la potenza del test, ai livelli di significativita α = 0.05 eα = 0.01, al variare della numerosita campionaria. Ad esempio, al livello α = 0.05, per avere una potenzadell’80% occorre un campione di almeno n = 183 lanci. Per ottenere la stessa potenza al livello α = 0.01occorrono almeno n = 249 lanci.

Esempio 15. Tracciare le curve come in Figura 9 supponendo che la probabilita di ottenere testa con la monetatruccata sia p = 0.7 oppure p = 0.55.

0 100 200 300 400 500

0.0

0.2

0.4

0.6

0.8

1.0

numero di lanci

pote

nza

(p=

0.7

)

0.050.01

0 100 200 300 400 500

0.0

0.2

0.4

0.6

0.8

1.0

numero di lanci

pote

nza

(p=

0.5

5 )

0.050.01

Figura 10: Potenza al variare di n per p = 0.7 e p = 0.55

I plot richiesti possono essere generati utilizzando la funzione plot.power.moneta definita sopra.

> plot.power.moneta(p2=0.7)

> plot.power.moneta(p2=0.55)

Dal confronto fra questi due plot (si veda la Figura 10) e quello gia ottenuto in Figura 9 nel caso p = 0.6, echiaro che, a parita di livello di significativita α e di numerosita campionaria n, il test e tanto piu potente quantomaggiore e la differenza fra le medie che si vuole rilevare: ad esempio, per α = 0.05 ed n = 100, la potenza deltest nei casi p = 0.55, p = 0.6 e p = 0.7 vale rispettivamente 0.258, 0.641 e 0.995. Quindi, nel caso p = 0.55,l’errore di tipo II e molto elevato (β = 0.742), mentre se p = 0.7 l’errore di tipo II e molto basso (β = 0.005).

Riassumendo quanto abbiamo visto analizzando questo esempio, possiamo concludere che la potenza di untest statistico dipende dai seguenti fattori:

• il livello di significativita α (cioe il rischio di errore di tipo I);

• la numerosita campionaria;

• la dimensione dell’eventuale differenza che si vuole osservare.

Nel paragrafo 7 verra calcolata la potenza di alcuni test presi da situazioni reali, utilizzando le funzionidisponibili in R.

20 G. Crasta

4 Confronto di medie fra gruppi

4.1 Test di Fisher (F-test)

Il test di Fisher (o F-test) e un’analisi della varianza (ANOVA – Analysis of Variance) ad una via (one–

way layout, vale a dire, si confrontano k popolazioni estraendo campioni indipendenti da ciascuna di esse).Supponiamo di avere k ≥ 2 popolazioni normali e di uguale varianza. L’ipotesi di lavoro (o ipotesi nulla)e che i k fenomeni aleatori siano in realta un unico fenomeno normale con media comune. Supponiamo persemplicita che su ciascuna popolazione vengano effettuati n esperimenti. Siano

X1, . . . , Xk medie campionarie,

S21 , . . . , S2

k varianze campionarie,

X = 1

k

∑ki=1

Xi media globale degli esperimenti.

Definiamo la varianza tra gruppi ed entro i gruppi (in inglese, tra=between, entro=within):

S2tra = n S2

X= n

∑ki=1

(Xi − X)2

k − 1(varianza tra i gruppi)

S2entro =

1

k

k∑

i=1

S2i (varianza entro i gruppi)

Nel caso generale, vale a dire quando le numerosita campionarie n1, . . . , nk possono anche essere differenti, levarianze S2

tra e S2entro possono essere definite come segue. Supponiamo che X1j , . . . , Xnjj siano le osservazioni

relative al gruppo j, e come sopra indichiamo con Xj la media di queste osservazioni (spesso nei testi di statisticatale media viene indicata con X ·j), cioe

Xj ≡ X ·j =1

nj

nj∑

i=1

Xij j = 1, . . . , k .

Indichiamo ancora con X la media globale di tutte le osservazioni (che, in generale, non coincide con la mediadelle medie, dal momento che le numerosita campionarie possono essere diverse):

X =1

N

k∑

j=1

nj∑

i=1

Xij , N =k∑

j=1

nj (numero totale di esperimenti).

Definiamo a questo punto

SStra =

k∑

j=1

nj(Xj − X)2, S2tra =

SStra

k − 1, SSentro =

k∑

j=1

nj∑

i=1

(Xij − Xj)2 , S2

entro =SSentro

N − k

(SS sta per Sum of Squares, somma dei quadrati). Il consuntivo F e definito come il rapporto fra le quantitaS2

tra e S2entro:

F =S2

tra

S2entro

. (6)

I risultati dell’analisi della varianza vengono generalmente riassunti in una tabella dell’analisi della varianza(ANOVA table in inglese) come segue:

d.f. SS S2 F

Trattamenti k − 1 SStra S2tra = SStra

k−1F =

S2tra

S2entro

Errore N − k SSentro S2entro = SSentro

N−k

La sigla “d.f.” sta per degrees of freedom (gradi di liberta). Con R questa tabella si ottiene col comando ‘anova’(si vedano gli esempi successivi).

Vediamo ora come vanno interpretati i dati riportati nella tabella dell’ANOVA. Sappiamo, per ipotesi, che lek popolazioni sono distribuite normalmente con la stessa varianza σ2. Indichiamo con µj la media della j-esimapopolazione, j = 1, . . . , k. Abbiamo quindi che

Xij = µj + ǫij , ǫij ∼ N(0, σ2). (7)

Detta µ = (∑k

j=1µj)/k la media globale, abbiamo inoltre che

µj = µ + τj , µ =1

k

k∑

j=1

µj ,

k∑

j=1

τj = 0. (8)

Laboratorio di Statistica 21

La quantita τj = µj − µ e detta effetto del trattamento j-esimo. Complessivamente, abbiamo che

Xij = µ + τj + ǫij , ǫij ∼ N(0, σ2). (9)

La quantita S2entro fornisce sempre uno stimatore corretto della varianza σ2, indipendentemente dal fatto che le

popolazioni abbiano la stessa media oppure no (o, equivalentemente, indipendentemente dal fatto che l’ipotesinulla sia vera oppure no). Si ha infatti

S2entro =

SSentro

N − k=

1

N − k

k∑

j=1

(nj − 1)S2j (10)

e si puo dimostrare che

E(S2entro) = σ2,

SSentro

σ2∼ χ2

N−k. (11)

Per quanto riguarda S2tra, si puo dimostrare che

E(S2tra) = σ2 +

1

k − 1

k∑

j=1

nj(τj − τ)2, τ :=1

N

k∑

j=1

nj τj . (12)

Distinguiamo ora i due casi:a) H0 e vera, cioe µ1 = · · · = µk = µ. In tal caso si ha τ1 = · · · = τk = τ = 0, e da (12) ricaviamo che

E(S2tra) = σ2. Inoltre, in questo caso si puo dimostrare che

SStra

σ2∼ χ2

k−1 (se µ1 = µ2 = · · · = µk). (13)

Di conseguenza, dalla definizione della variabile di Fisher F concludiamo che il consuntivo

F =

(

SStra

σ2

)

/(k − 1)(

SSentro

σ2

)

/(N − k)=

S2tra

S2entro

,

che e esattamente la quantita definita in (6), si distribuisce come una variabile di Fisher con νn = k − 1 gradidi liberta al numeratore e νd = N − k gradi di liberta al denominatore. (Se i gruppi hanno la stessa numerositan, si ha νd = k(n − 1)).

b) H0 e falsa. In questo caso, il termine S2tra non e piu uno stimatore corretto della varianza σ2. Si vede infatti

da (12) che S2tra tende a sovrastimare σ2; di conseguenza, tanto piu F e grande, tanto maggiore e l’evidenza a

supporto del fatto che H0 sia da rifiutare.

Le distribuzioni di Fisher sono tabulate (si vedano le Tabelle 7 e 8); con R e possibile calcolare i quantili comenel seguente esempio.

> # Esempio: k = 6, n = 4

> k <- 6

> n <- 4

> alpha <- 0.05

> # quantile di ordine 1-alpha

> u <- qf(1-alpha, k-1, k*(n-1))

[1] 2.772853

Indicato con u il quantile di ordine 1 − α, abbiamo che

• se F < u, l’ipotesi di lavoro viene accettata (o meglio, non viene respinta);

• se F > u, l’ipotesi di lavoro viene respinta.

Con R e anche possibile eseguire direttamente il test di Fisher come nell’esempio seguente.

> # Analisi della varianza (F-test)

> # Glantz p. 55: Donne che praticano mezzofondo

> #

> # Gruppo di controllo

> ctrl <- c(9, 9.5, 10, 10, 10, 10.5, 10.5, 10.5, 11, 11, 11.5, 11.5,

+ 12, 12, 12, 12, 12, 12.5, 12.5, 12.5, 12.5, 13, 13, 13, 14, 14)

> # Gruppo ’joggers’

> joggers <- c(5, 6, 6.5, 7.5, 8, 8.5, 9, 9.5, 9.5, 10, 10, 10, 10,

22 G. Crasta

+ 10.5, 10.5, 11, 11, 11, 11.5, 11.5, 12, 12, 12, 12.5, 13, 13.5)

> # Gruppo ’runners’

> runners <- c(4, 5, 5, 6, 6, 7, 8, 8, 9, 9, 9, 9.5, 9.5, 10, 10, 10, 10,

+ 10.5, 10.5, 10.5, 11, 11, 11.5, 12, 12.5, 13)

> # Crea il dataframe

> d <- data.frame(ctrl, joggers,runners)

> # Plot 2x2

> par(mfrow=c(2,2), pch=16)

> hist(ctrl, xlim = c(4,14), breaks = (8:28)/2)

> hist(joggers, xlim = c(4,14), breaks = (8:28)/2)

> hist(runners, xlim = c(4,14), breaks = (8:28)/2)

> boxplot(d)

> # Ripristina una figura per plot

> par(mfrow=c(1,1), pch=1)

> # Prepara i dati per l’analisi della varianza ad una via

> ds <- stack(d)

> # Visualizza i nomi (opzionale)

> names(ds)

[1] "values" "ind"

> # 1) Analisi della varianza con ’oneway.test’

> ds.test <- oneway.test(values ~ ind, data=ds, var.equal=TRUE)

> print(ds.test)

One-way analysis of means

data: values and ind

F = 10.1311, num df = 2, denom df = 75, p-value = 0.0001274

> # 2) Analisi della varianza con ’anova’

> anova(lm(values ~ ind, data=ds))

Analysis of Variance Table

Response: values

Df Sum Sq Mean Sq F value Pr(>F)

ind 2 81.750 40.875 10.131 0.0001274 ***

Residuals 75 302.596 4.035

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

> # 3) Analisi della varianza con ’aov’

> summary(aov(values~ind, data=ds))

Df Sum Sq Mean Sq F value Pr(>F)

ind 2 81.750 40.875 10.131 0.0001274 ***

Residuals 75 302.596 4.035

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Dai boxplot mostrati in Figura 11 possiamo dedurre che le distribuzioni sono ragionevolmente simmetriche.Il p-value calcolato dalla funzione oneway.test rappresenta la probabilita di avere un valore di F maggiore ouguale a quello calcolato. Un p-value basso (inferiore a 0.05 o 0.01) indica che l’ipotesi nulla deve essere rifiutataal dato livello di significativita. Possiamo anche calcolare direttamente il valore di F e confrontarlo col quantile:

> #Esegue l’F-test usando i dati aggregati

> x <- c(mean(ctrl), mean(joggers), mean(runners))

> #Numerosita’ dei gruppi

> n <- 26

> var.tra <- n * var(x)

> varx <- c(var(ctrl), var(joggers), var(runners))

> var.entro <- mean(varx)

> #Calcola il valore di F

> F <- var.tra/var.entro

> print(F)

[1] 10.13108

Laboratorio di Statistica 23

Histogram of ctrl

ctrl

Fre

quen

cy4 6 8 10 12 14

02

4

Histogram of joggers

joggers

Fre

quen

cy

4 6 8 10 12 14

01

23

4

Histogram of runners

runners

Fre

quen

cy

4 6 8 10 12 14

01

23

4

ctrl joggers runners

48

12

Figura 11: hist(ctrl), hist(joggers), hist(runners) e boxplot(d)

> #Calcola il P-value con (3-1) gradi di liberta’ al numeratore

> #e 3*(26-1)= 75 gradi di liberta’ al denominatore

> p <- pf(F, 2, 75, lower.tail=FALSE)

> print(p)

[1] 0.0001274331

> k <- 3

> n <- 26

> qf(.95, k-1, k*(n-1))

[1] 3.118642

> qf(.99, k-1, k*(n-1))

[1] 4.899877

Poiche F = 10.13, l’ipotesi nulla puo essere respinta sia al livello di significativita del 95% che al livello disignificativita del 99%.

Esempio 16. Quattro gruppi di studenti sono stati sottoposti a quattro differenti tecniche di insegnamento perun certo periodo di tempo. I risultati ottenuti nei test dagli studenti sono i seguenti:- gruppo 1: 65, 87, 73, 79, 81, 69- gruppo 2: 75, 69, 83, 81, 72, 79, 90- gruppo 3: 59, 78, 67, 62, 83, 76- gruppo 4: 94, 89, 80, 88Si vuole sapere se i dati indicano l’esistenza di differenze significative fra i quattro metodi d’insegnamento.

Eseguiamo i calcoli con R:

> # Analisi della varianza

> # 4 gruppi di differente numerosita’

> x1 <- c(65,87,73,79,81,69)

> x2 <- c(75,69,83,81,72,79,90)

> x3 <- c(59,78,67,62,83,76)

> x4 <- c(94,89,80,88)

> d <- c(x1, x2, x3, x4)

> ind <- c(rep(1, length(x1)), rep(2, length(x2)),

+ rep(3, length(x3)), rep(4, length(x4)))

> ind <- factor(ind)

> # Metodo 1

> oneway.test(d ~ ind, var.equal=TRUE)

One-way analysis of means

24 G. Crasta

data: d and ind

F = 3.7715, num df = 3, denom df = 19, p-value = 0.02804

> # Metodo 2

> anova(lm(d~ind))

Analysis of Variance Table

Response: d

Df Sum Sq Mean Sq F value Pr(>F)

ind 3 712.59 237.53 3.7715 0.02804 *

Residuals 19 1196.63 62.98

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

> # Metodo 3

> summary(aov(d~ind))

Df Sum Sq Mean Sq F value Pr(>F)

ind 3 712.59 237.53 3.7715 0.02804 *

Residuals 19 1196.63 62.98

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Come si puo osservare, la funzione ‘anova’ fornisce la tabella dell’analisi della varianza (ANOVA table). Ilp-value del test e 0.028; al livello di significativita del 5% possiamo dunque concludere che ci sono differenze frai diversi metodi d’insegnamento.

Intervalli di confidenza. Gli intervalli di confidenza per la media del trattamento j-esimo o per la differenzatra il trattamento j-esimo e il trattamento r-esimo hanno estremi rispettivamente

Xj ± tα/2

Sentro√nj

e

(Xj − Xr) ± tα/2 Sentro

1

nj+

1

nr,

dove tα/2 e il quantile di ordine 1 − α/2 della distribuzione t di Student con N − k gradi di liberta.Tornando all’Esempio 16, abbiamo che l’intervallo di confidenza al 95% per la media del gruppo 1 e

75.667± 2.093

√62.980√

6cioe 68.885 < µ1 < 82.448.

L’intervallo di confidenza al 95% per la differenza fra le medie del primo e del quarto gruppo e invece

(75.667− 87.750)± 2.093√

62.980

1

6+

1

4cioe − 22.805 < µ1 − µ4 < −1.361.

Questo suggerisce che µ4 > µ1, poiche l’intervallo di confidenza della differenza delle medie e tutto contenutonella semiretta x < 0. Come verra discusso in dettaglio nel Paragrafo 4.4, l’uso di questi intervalli di confidenzanon e tuttavia corretto, in quanto tende a sottostimare l’errore di prima specie.

4.2 Test t di Student (t-test)

E un caso particolare del test di Fisher con k = 2 gruppi. Come per il test di Fisher, l’ipotesi di lavoro (cioel’ipotesi nulla) e che le due popolazioni X1 e X2 siano in realta un’unica popolazione. Supponiamo che i duegruppi abbiano la stessa numerosita n. Indicando con X1 e X2 le medie campionarie, e con S2

1 , S22 le varianze

campionarie, possiamo definire il consuntivo

t =X1 − X2

S21/n + S2

2/n=

X1 − X2

S√

2/n, (14)

dove S2 = (S21 + S2

2)/2 e la stima combinata della varianza, che si puo dimostrare essere uno stimatore correttodella varianza σ2. (Ricordiamo che, per ipotesi, le due popolazioni X1 e X2 hanno la stessa varianza. Esisteanche un test che non fa uso di questa ipotesi, ma la sua trattazione non e elementare. Con R questo testpuo essere effettuato utilizzando il parametro ‘var.equal=FALSE’ nella chiamata della funzione ‘t.test’.) Talevalore t sara “piccolo” se le due medie campionarie sono vicine, mentre tendera ad essere grande quando le

Laboratorio di Statistica 25

due medie campionarie sono molto differenti. Il consuntivo aleatorio t segue una legge probabilistica nota comedistribuzione t di Student con ν = 2(n − 1) gradi di liberta. I quantili di tale distribuzione sono tabulati (sivedano le Tabelle 5 e 6); con R possono essere calcolati come segue:

> # Esempio: n = 20

> n <- 20

> alpha <- 0.05

> # quantile di ordine 1-alpha/2, test a due code

> u <- qt(1-alpha/2, df = 2*(n-1))

[1] 2.024394

Quindi, se −u < t < u accettiamo l’ipotesi nulla, mentre se |t| > u rifiutiamo l’ipotesi nulla. Osserviamo cheil test t e un test a due code, quindi con R occorre calcolare il quantile di ordine 1 − α/2 (e non 1 − α), poichevogliamo considerare sia la coda t < −u che la coda t > u. Naturalmente, se l’ipotesi nulla e “la media di X1 emaggiore della media di X2” (o viceversa), allora si usera il test ad una coda e il quantile sara quello di ordine1 − α. Questo e il caso che si presenta, ad esempio, quando si vuole stabilire se un determinato trattamentoe migliore di un altro (dove il fatto che sia migliore si misura, ad esempio, con un aumento della media dellapopolazione).

Nel caso i due gruppi abbiano diversa numerosita n1 ed n2, la stima combinata della varianza (che e unostimatore corretto per σ2) e data da

S2 =(n1 − 1)S2

1 + (n2 − 1)S22

n1 + n2 − 2. (15)

Osserviamo che S2 coincide con la varianza entro i gruppi S2entro, definita in (10), nel caso particolare di k = 2

gruppi. Si usa dunque il consuntivo

t =X1 − X2

S2/n1 + S2/n2

=X1 − X2

S√

1/n1 + 1/n2

, (16)

che va confrontato con i quantili della distribuzione t con ν = n1+n2−2 gradi di liberta (si veda il Paragrafo 9.2per maggiori dettagli). Osserviamo che, quando ν e abbastanza grande (ν ≥ 30), la distribuzione t di Studentcon ν gradi di liberta e praticamente indistinguibile dalla distribuzione normale standard. Per questo motivo,per grandi campioni (quando cioe ν ≥ 30) si utilizza spesso il test basato sulla distribuzione normale standard,mentre per piccoli campioni (ν < 30) si usa il test appena descritto, basato sulla distribuzione t di Student.

Con R il test t puo essere eseguito direttamente come segue.

> # Glantz, Es. 4.2 p. 108

> placebo <- c(156,171,133,102,129,150,120,110,112,130,105)

> nifedipina <- c(73,81,103,88,130,106,106,111,122,108,99)

> t.test(placebo, nifedipina, conf.level=0.95, var.equal=TRUE, alternative="greater")

Two Sample t-test

data: placebo and nifedipina

t = 3.1405, df = 20, p-value = 0.002575

alternative hypothesis: true difference in means is greater than 0

95 percent confidence interval:

11.92587 Inf

sample estimates:

mean of x mean of y

128.9091 102.4545

Nell’esempio riportato si ha t = 3.1405 con ν = df = 20 gradi di liberta (df = degrees of freedom = gradidi liberta). Poiche il p-value e inferiore a 0.01, possiamo concludere, con un livello di confidenza del 99%, cheil trattamento con Nifedipina e efficace per ridurre la pressione arteriosa. Si osservi che, nel test, abbiamoutilizzato il parametro alternative=greater per specificare che l’ipotesi alternativa (a quella nulla) e che ladifferenza fra le medie sia positiva. In alternativa, possiamo calcolare direttamente i quantili per la distribuzionea una coda:

> alpha <- 0.05

> qt(1-alpha, df=20)

[1] 1.724718

> alpha <- 0.01

> qt(1-alpha, df=20)

[1] 2.527977

26 G. Crasta

Il valore calcolato di t = 3.1405 e maggiore del quantile di ordine 1 − α = 0.99, corrispondente al livello diconfidenza del 99%.

Intervalli di confidenza. Nell’esempio precedente, fra le informazioni restituite dalla funzione t.test diR c’e anche l’intervallo di confidenza al livello di confidenza del 95% (95% confidence interval). Vediamo dicosa si tratta. Supponiamo, di avere due popolazione X1 e X2 di uguale varianza, e aventi medie µ1 e µ2 nonnecessariamente coincidenti. Il consuntivo

t =(X1 − X2) − (µ1 − µ2)

S√

1/n1 + 1/n2

, (17)

dove S2 e la stima combinata della varianza definita in (15), segue ancora la distribuzione t di Student conν = n1+n2−2 gradi di liberta. Chiaramente, la vera differenza fra le medie µ1−µ2 e ignota allo sperimentatore.Supponiamo di effettuare un test a due code, ad un livello di significativita α, e sia tα/2 il quantile di ordine1−α/2 della distribuzione t di Student con ν = n1+n2−2 gradi di liberta. Allora sappiamo che, con probabilita1 − α, il valore osservato di t cadra nell’intervallo (−tα/2, tα/2), cioe

−tα/2 <(X1 − X2) − (µ1 − µ2)

S√

1/n1 + 1/n2

< tα/2 .

Questo significa che, con probabilita 1 − α, la differenza fra le vere medie sta nell’intervallo

(X1 − X2) − tα/2 S√

1/n1 + 1/n2 < µ1 − µ2 < (X1 − X2) + tα/2 S√

1/n1 + 1/n2

Tale intervallo e detto intervallo di confidenza per la differenza delle medie al 100(1 − α)% (ad esempio, seα = 0.05 questo sara l’intervallo di confidenza al 95%). Nel caso di test a una coda, l’intervallo di confidenzasara del tipo (−∞, tα) oppure (tα, +∞), con tα quantile di ordine 1−α. Dal punto di vista del test delle ipotesi,se tale intervallo contiene lo zero, allora non possiamo rifiutare l’ipotesi nulla; in altri termini, non abbiamoevidenza (al livello di significativita α) che ci sia una differenza fra le medie. Viceversa, se 0 non appartiene atale intervallo, allora possiamo rifiutare l’ipotesi nulla (al dato livello di significativita).

Riprendiamo l’esempio precedente del trattamento con Nifedipina. Il test e a una coda; al livello di significa-tivita α = 0.05, il quantile di ordine 1−α = 0.95 della distribuzione di Student con ν = 20 gradi di liberta valet0.05 = 1.725 (si veda la Tabella 6). Effettuiamo i calcoli con R:

> # Stima combinata della varianza

> s2 <- (var(placebo)+var(nifedipina))/2

> s2

[1] 390.2818

> # Calcolo del quantile di ordine 0.95

> t <- qt(0.95, 20)

> t

[1] 1.724718

> # Calcolo dell’estremo sinistro dell’intervallo

> mean(placebo) - mean(nifedipina) - t * sqrt(s2) * sqrt(1/11+1/11)

[1] 11.92587

Poiche il test e a una coda, e l’ipotesi nulla e H0 : µ1 − µ2 ≥ 0, l’intervallo di confidenza per la differenza dellemedie al 95% e (11.926, +∞), che coincide con quello indicato dalla funzione t.test (R indica con ‘Inf’ ilsimbolo ‘∞’). Poiche tale intervallo non contiene 0, possiamo rifiutare l’ipotesi nulla al livello di significativitaα = 0.05.

4.3 Test t per dati appaiati

Net test t per dati appaiati i soggetti di uno stesso gruppo vengono osservati prima e dopo essere stati sottopostiad un solo trattamento. Il test riguarda la variazione media prodotta dal trattamento, anziche la differenzadelle risposte medie come avviene nel test t classico.

Supponiamo dunque di avere un gruppo di n elementi. Misuriamo, per ciascun elemento, il parametro oggettodi studio. Sottoponiamo poi gli elementi del gruppo al trattamento, e misuriamo nuovamente il parametro inquestione. Per ogni elemento avremo quindi una misura della variazione nel parametro, che sara la differenzafra la misura dopo il trattamento e quella prima del trattamento. Dato dunque questo insieme d1, . . . , dn divariazioni, possiamo calcolarne la media d e la deviazione standard Sd:

d =1

n

n∑

i=1

di, Sd =

1

n − 1

n∑

i=1

(di − d)2 .

Laboratorio di Statistica 27

Questo ci consente di calcolare l’errore standard per la media delle differenze, che sara dato da

Sd =Sd√n

.

Se δ e la variazione media dovuta al trattamento della popolazione, allora la statistica

t =d − δ

Sd

si distribuisce approssimativamente, per n grande, come la variabile aleatoria t di Student con ν = n − 1 gradidi liberta. Ricordiamo che, come per tutti i test t, si suppone sempre che la popolazione sia distribuita, almenoapprossimativamente, in maniera normale. Quindi, se vogliamo testare l’ipotesi nulla H0 : δ = 0, calcoleremo ilvalore t = d/Sd e lo confronteremo col valore critico per ν = n − 1 gradi di liberta.

Esempio 17 (Glantz, pag. 299). Su un gruppo di n = 11 soggetti e stata misurata la percentuale di aggregazionepiastrinica prima e dopo aver fumato una sigaretta. Si vuole testare l’ipotesi nulla che il fumo non producavariazioni (test a due code). Le variazioni misurate di questa percentuale sono 2, 4, 10, 12, 16, 15, 4, 27, 9, -1,15. Effettuiamo prima i calcoli espliciti con R:

> d <- c(2, 4, 10, 12, 16, 15, 4, 27, 9, -1, 15)

> n <- length(d)

> # calcolo di t

> mean(d) * sqrt(n/var(d))

[1] 4.271609

> # quantile di ordine 1-alpha/2 (test a due code)

> alpha <- 0.01

> qt(1-alpha/2, n-1)

[1] 3.169273

Poiche il valore calcolato t = 4.27 e maggiore del quantile tα/2 = 3.17, possiamo rifiutare l’ipotesi nulla al livellodi significativita α = 0.01. Con R possiamo anche eseguire direttamente il test usando la funzione t.test.Qui sotto abbiamo prima eseguito il test usando il vettore delle differenze d; in seguito abbiamo eseguito lostesso test utilizzando pero i vettori x e y delle misurazioni effettuate prima e dopo il trattamento (si noti l’usodell’argomento ‘paired=TRUE’ nella chiamata a t.test con i due vettori).

> t.test(d, alternative="two.sided", conf.level=0.99)

One Sample t-test

data: d

t = 4.2716, df = 10, p-value = 0.001633

alternative hypothesis: true mean is not equal to 0

99 percent confidence interval:

2.650991 17.894463

sample estimates:

mean of x

10.27273

> # t-test per dati appaiati

> x <- c(25, 25, 27, 29, 30, 42, 51, 51, 57, 61, 67)

> y <- c(27, 29, 37, 41, 46, 57, 55, 78, 66, 60, 82)

> t.test(y, x, paired=TRUE, alternative="two.sided", conf.level=0.99)

Paired t-test

data: y and x

t = 4.2716, df = 10, p-value = 0.001633

alternative hypothesis: true difference in means is not equal to 0

99 percent confidence interval:

2.650991 17.894463

sample estimates:

mean of the differences

10.27273

28 G. Crasta

4.4 Procedure per confronti multipli

Come abbiamo gia detto, il test t di Student puo essere utilizzato solo per confrontare due gruppi. In caso dipiu di due gruppi occorre utilizzare l’analisi della varianza (test F di Fisher).

Supponiamo ora di avere m > 2 gruppi, e che il test F di Fisher rilevi che ci siano differenze ad un livello disignificativita α. A questo punto vogliamo identificare il gruppo (o i gruppi) che producono risultati diversi dallamedia. A questo proposito si utilizzano le procedure per confronti multipli, alcune delle quali sono descritte inquesto paragrafo.

Osserviamo che, in generale, e sbagliato effettuare piu test t fra le varie coppie di gruppi per evidenziare ledifferenze, in quanto in questo modo si tende a sottostimare l’errore. Per esemplificare, supponiamo di averem = 3 gruppi, A, B, C. In questo caso possiamo effettuare tre test t, fra le coppie (A, B), (A, C) e (B, C).Supponiamo di effettuare questi tre test con livello di significativita α = 0.05. Nel primo confronto abbiamo il5% di probabilita di concludere erroneamente che il trattamento ha avuto effetto; la stessa percentuale di errorevale anche per gli altri due confronti. In totale, ci si puo quindi aspettare una percentuale d’errore pari al 15%(in realta non e esattamente cosı, ma l’approssimazione e abbastanza buona). Di conseguenza, per avere unlivello globale di significativita pari al 5%, occorrerebbe condurre i tre test ad un livello di significativita pari aα/3 = 0.0167.

Test t di Bonferroni. Il test t di Bonferroni e basato sulla disuguaglianza di Bonferroni, che a sua volta e lageneralizzazione di quanto abbiamo accennato sopra. In altri termini, supponiamo di effettuare k confronti fragruppi (nel caso dell’esempio si avrebbe k = 3) con un livello di significativita α. Allora la probabilita αT diosservare almeno una volta un valore del test statistico superiore ad α non supera kα, cioe αT < k α. Quindi,se vogliamo garantire che complessivamente un test con k confronti abbia un livello di significativita pari adαT , dobbiamo effettuare ciascuno dei k confronti ad un livello di significativita α = αT /k.

Il test di Bonferroni e eccessivamente conservativo (rischia cioe di non rilevare le differenze quando anche questeci sono). Un metodo per rendere meno conservativo il test e di utilizzare, nella definizione (16) di t, la varianzaentro gruppi S2

entro del test F di Fisher al posto della varianza combinata S2 definita in (15).

Esempio 18. Riprendiamo l’esempio trattato nel paragrafo 4.1 (si veda Glantz, pag. 55 e pag. 89). Abbiamotre gruppi, ciascuno di n = 26 elementi. Il test F di Fisher, che abbiamo gia eseguito nel paragrafo 4.1, rivelal’esistenza di differenze al livello di significativita αT = 0.05 Il livello di significativita per i tre confronti fracoppie sara quindi α = 0.05/3 ≃ 0.0167. Calcoliamo con R i valori di t per i tre confronti.

> #Gruppo di controllo

> ctrl <- c(9, 9.5, 10, 10, 10, 10.5, 10.5, 10.5, 11, 11, 11.5, 11.5,

+ 12, 12, 12, 12, 12, 12.5, 12.5, 12.5, 12.5, 13, 13, 13, 14, 14)

> #Gruppo ’joggers’

> joggers <- c(5, 6, 6.5, 7.5, 8, 8.5, 9, 9.5, 9.5, 10, 10, 10, 10,

+ 10.5, 10.5, 11, 11, 11, 11.5, 11.5, 12, 12, 12, 12.5, 13, 13.5)

> #Gruppo ’runners’

> runners <- c(4, 5, 5, 6, 6, 7, 8, 8, 9, 9, 9, 9.5, 9.5, 10, 10, 10, 10,

+ 10.5, 10.5, 10.5, 11, 11, 11.5, 12, 12.5, 13)

> varx <- c(var(ctrl), var(joggers), var(runners))

> var.entro <- mean(varx)

> n <- 26

> # t per confronto ctrl/joggers

> (mean(ctrl)-mean(joggers))/sqrt(2 * var.entro / n)

[1] 2.796097

> # t per confronto ctrl/runners

> (mean(ctrl)-mean(runners))/sqrt(2 * var.entro / n)

[1] 4.453044

> # t per confronto joggers/runners

> (mean(joggers)-mean(runners))/sqrt(2 * var.entro / n)

[1] 1.656947

> # Calcolo del valore critico per il test a due code

> alphaT <- 0.05

> alpha <- alphaT/3

> qt(1-alpha/2, 3*(n-1))

[1] 2.448861

Il valore critico di t, per il test a due code, al livello di significativita αT = 0.05/3, e circa 2.45. Possiamo dunqueconcludere che ci siano differenze significative fra le coppie di gruppi controllo/joggers e controllo/runners,mentre non ci sono differenze significative fra joggers e runners.

Laboratorio di Statistica 29

Test di Student-Newman-Keuls. Il test di Student-Newman-Keuls (SNK) e basato su un modello matema-tico per confronti multipli piu complesso della disuguaglianza di Bonferroni, e permette di ottenere una stimapiu realistica di αT rispetto al test di Bonferroni soprattutto quando il numero di confronti multipli e elevato.Supponiamo dunque di avere m > 2 gruppi e, come per il test di Bonferroni, supponiamo che il test F di Fisherabbia evidenziato l’esistenza di differenze significative fra i gruppi (ricordiamo che questa premessa deve sempreessere verificata prima di procedere con i confronti multipli). A questo punto si dispongono tutte le m mediecampionarie in ordine crescente; supponiamo dunque che

X1 ≤ X2 ≤ . . . ≤ Xm .

Possiamo ora procedere con i confronti. Si parte dal gruppo con media piu grande Xm; questo gruppo vaconfrontato con tutti gli altri, a partire da quello avente media piu piccola X1, salendo fino al penultimo gruppo(con media Xm−1). Si passa poi al gruppo m − 1, e lo si confronta con quelli che lo precedono, partendo dalprimo e procedendo in ordine fino al gruppo m − 2. Si va avanti in questo modo fino ad arrivare al grupponumero 2, che andra confrontato solo col gruppo numero 1.

Vediamo ora come stabilire se esistono differenze significative fra due gruppi. Fissiamo il livello di significativitaαT che, come abbiamo gia detto, rappresenta il rischio totale di dichiarare erroneamente l’esistenza di almenouna differenza dopo aver effettuato tutti i confronti. Quando si confrontano due gruppi i e j, con i < j, perstabilire se ci sono differenze significative si calcola la statistica

q =Xj − Xi

1

2S2

entro

(

1

ni+ 1

nj

)

.

Questo valore va confrontato con il valore critico di q, che dipende dal livello di significativita αT , dal numerodi gradi di liberta νd (che e il numero di gradi di liberta a denominatore del test F di Fisher), e dal parametrop = j − i + 1 che indica il numero di medie confrontate nel test (si vedano le tabelle al Paragrafo 10.5). Con Ri valori critici possono essere calcolati attraverso la funzione ‘qtukey’, mentre i p-value possono essere calcolaticon la funzione ‘ptukey’. Nell’eseguire i confronti e utile la seguente regola: se il confronto fra i gruppi i e j(i < j) non mostra differenze significative, allora non esistono differenze nemmeno fra i gruppi compresi fra i ej.

Esempio 19. Torniamo nuovamente all’esempio trattato nel paragrafo 4.1 (si veda Glantz, pag. 55 e pag. 89),per il quale abbiamo gia utilizzato il test di Bonferroni nell’Esempio 18. Abbiamo tre gruppi, ciascuno di n = 26elementi. Il test F di Fisher, che abbiamo gia eseguito nel paragrafo 4.1, rivela l’esistenza di differenze al livellodi significativita αT = 0.05. Utilizziamo il test SNK per stabilire quali gruppi mostrano differenze significative.Nel codice riportato qui sotto utilizziamo i vettori ‘ctrl’, ‘joggers’ e ‘runners’ gia introdotti nell’Esempio 18.Ricordiamo inoltre che ‘var.entro’ indica la varianza entro i gruppi S2

entro ≃ 4.035.

> # I vettori ctrl, joggers e runners sono gia’ stati inseriti.

> # Test di Student-Newman-Keuls

> # medie ordinate

> x1 <- mean(runners)

> x2 <- mean(joggers)

> x3 <- mean(ctrl)

> print(c(x1, x2, x3))

[1] 9.134615 10.057692 11.615385

> # denominatore per il calcolo di q

> # (e’ lo stesso per tutti i confronti, var.entro=4.035)

> den <- sqrt(var.entro/2*(1/26+1/26))

> # numero di gradi di liberta’

> df <- 75

> # confronto 3 vs. 1

> q <- (x3-x1)/den

> q

[1] 6.297555

> # calcolo del p-value

> ptukey(q, nmeans=3, df=75, lower.tail=FALSE)

[1] 8.545029e-05

> # confronto 3 vs. 2

> q <- (x3-x2)/den

> q

[1] 3.954279

30 G. Crasta

> # calcolo del p-value

> ptukey(q, nmeans=2, df=75, lower.tail=FALSE)

[1] 0.006566265

> # confronto 2 vs. 1

> q <- (x2-x1)/den

> q

[1] 2.343276

> # calcolo del p-value

> ptukey(q, nmeans=2, df=75, lower.tail=FALSE)

[1] 0.1017081

Abbiamo calcolato il p-value per ciascun confronto; tali valori sono 8.5 · 10−5, 0.0066 e 0.10 rispettivamenteper i confronti fra i gruppi 3 e 1, 3 e 2, 2 e 1. Da qui concludiamo che esistono differenze significative (allivello αt = 0.05) fra i gruppi 3 e 1 e i gruppi 3 e 2, mentre la differenza fra i gruppi 3 e 2 non e significativa.Ricordiamo che, dopo l’ordinamento, i gruppi 1, 2, 3 sono rispettivamente runners, joggers, controllo.

5 Confronto di proporzioni

Vedremo all’inizio un test adatto al confronto di due gruppi, per esperimenti di tipo Bernoulliano (che prevedanocioe solo due possibili esiti). Successivamente illustreremo un altro test, noto come test del Chi-quadrato per la

verifica di proporzioni, che potra essere utilizzato anche per il confronto di proporzioni in piu di due gruppi e conpiu di due esiti possibili. Questi tipi di test sono adatti all’analisi di variabili misurate su una scala nominale,nella quale non c’e alcuna relazione matematica fra le differenti classificazioni. Ad esempio, una variabile chepossa assumere i valori ‘Verde’, ‘Rosso’ e ‘Bianco’ e misurata su scala nominale. Le variabili che abbiamoconsiderato nel paragrafo precedente (quando abbiamo parlato di confronto di medie) sono invece misurate suscale a intervalli. Vedremo piu avanti delle tecniche per l’analisi di variabili le cui misure possono essereordinate, senza che vi sia una relazione matematica fra i diversi valori. Queste ultime variabili sono misuratesu scale ordinali.

5.1 Il caso di due gruppi: il test z

Consideriamo degli esperimenti Bernoulliani indipendenti, cioe tali che:

• ogni singolo esperimento ha solo due esiti possibili: successo (con probabilita p) o insuccesso (con proba-bilita 1 − p);

• la probabilita p di successo e costante (cioe tutti gli esperimenti hanno la stessa probabilita di successo);

• gli esperimenti sono indipendenti.

Se supponiamo di eseguire n esperimenti, il risultato del test e descritto da una variabile aleatoria binomialeY ∼ Bin(n, p), per la quale E(Y ) = np, Var(Y ) = np(1 − p). Uno stimatore di p e p = Y/n, per il quale si ha

E(p) =E(Y )

n, S2

p =Var(Y )

n2=

p(1 − p)

n. (18)

Supponiamo ora di avere due campioni, di numerosita rispettivamente n1 ed n2, e supponiamo che le rispettivestime campionarie di p siano p1 e p2. In particolare, avremo che

p1 =k1

n1

, p2 =k2

n2

,

dove k1 e k2 sono rispettivamente il numero di successi nel primo e nel secondo gruppo.Vogliamo verificare se e valida l’ipotesi nulla (H0) che i campioni provengano dalla stessa popolazione. (Altrepossibili ipotesi nulle sono che la differenza delle probabilita di successo sia ≥ 0 oppure ≤ 0.) La proporzionetotale di successi, considerando i due gruppi come se fossero uno solo, sara data da

p =k1 + k2

n1 + n2

=n1 p1 + n2 p2

n1 + n2

.

La varianza della popolazione e stimata dalla varianza combinata

S2p1−p2

= p(1 − p)

(

1

n1

+1

n2

)

.

Laboratorio di Statistica 31

Utilizzeremo quindi il consuntivo

z =differenza fra le proporzioni campionarie

errore standard campionario=

p1 − p2√

p(1 − p)(

1

n1+ 1

n2

)

(19)

Se i campioni provengono dalla stessa popolazione questa statistica si distribuisce come una variabile normalestandard. Di conseguenza, rifiuteremo o meno l’ipotesi nulla a seconda che il valore di z sia all’esterno oall’interno della regione di accettazione.Spesso si preferisce utilizzare la statistica

z =|p1 − p2| − 1

2

(

1

n1+ 1

n2

)

p(1 − p)(

1

n1+ 1

n2

)

, (20)

conosciuta come correzione di Yates (o correzione per la continuita).Intervalli di confidenza. Esattamente come per il test t di Student, possiamo definire l’intervallo di confidenzaper la differenza delle proporzioni. Anche in questo caso, se p1 e p2 sono le proporzioni reali di successo nelledue popolazioni (non necessariamente uguali), allora la statistica

z =(p1 − p2) − (p1 − p2)

Sp1−p2

e approssimativamente distribuita in modo normale, se l’ampiezza dei campioni e sufficientemente grande.Fissato il livello di significativita α, determiniamo quindi il quantile zα di ordine 1 − α nel caso di test a unacoda, oppure il quantile zα/2 di ordine 1 − α/2 nel caso di test a due code. L’intervallo di confidenza per ladifferenza delle medie sara dunque del tipo

(p1 − p2) − zα/2 Sp1−p2 < p1 − p2 < (p1 − p2) + zα/2 Sp1−p2

per un test a due code, oppure del tipo

(p1 − p2) − zα Sp1−p2 < p1 − p2 ≤ 1, −1 ≤ p1 − p2 < (p1 − p2) + zα Sp1−p2

per un test a una coda, con ipotesi nulla rispettivamente p1 − p2 ≤ 0 oppure p1 − p2 ≥ 0. Come per il test t diStudent, se l’intervallo di confidenza contiene lo 0 allora accettiamo l’ipotesi nulla, viceversa la rifiutiamo.

Esempio 20 (Uso dell’aspirina nella prevenzione degli infarti). Un insieme di 22071 volontari viene diviso in duegruppi, il primo di n1 = 11034 e il secondo di n2 = 11037 elementi. Al primo gruppo (gruppo di controllo) vienesomministrato un placebo, mentre al secondo (gruppo di trattamento) viene somministrata una dose quotidianadi aspirina. Dopo cinque anni si osserva in ogni gruppo il numero di decessi per infarto, ottenendo la seguentetabella:

Esito Infartuati Non Infartuati TotaliFarmacoPlacebo 239 10795 11034Aspirina 139 10898 11037

378 21693 22071

Si vuole testare l’ipotesi nulla che la somministrazione di aspirina non abbia ridotto la probabilita di infarto,cioe H0 : p1 ≤ p2, dove p1 e p2 sono rispettivamente le probabilita di infarto per il gruppo di controllo e per ilgruppo di trattamento.Fissiamo il livello di significativita α = 0.01. Dovremo eseguire il test ad una coda per la statistica z definita in(19). Eseguiamo i calcoli direttamente con R.

> p1 <- 239/11034

> p2 <- 139/11037

> p1

[1] 0.02166032

> p2

[1] 0.01259400

> p <- (239+139)/22071

> p

[1] 0.01712655

> # calcola il valore di z

32 G. Crasta

> z <- (p1 - p2)/sqrt(p*(1-p)*(1/11034+1/11037))

> z

[1] 5.190729

> # calcola il valore di z con la correzione di Yates

> zyates <- (abs(p1 - p2)-1/2*(1/11034+1/11037))/sqrt(p*(1-p)*(1/11034+1/11037))

> zyates

[1] 5.138849

> # calcola il quantile della distribuzione a una coda

> alpha <- 0.01

> za <- qnorm(1-alpha)

> za

[1] 2.326348

> # Calcola l’intervallo di confidenza

> p1 - p2 - za * sqrt(p*(1-p)*(1/11034+1/11037))

[1] 0.005003035

Il valore calcolato z = 5.19 (o anche il valore corretto z = 5.14) e maggiore del quantile zα = 2.33. Diconseguenza, possiamo rifiutare l’ipotesi nulla concludendo che il trattamento ha effetto nella riduzione dei casidi infarto. L’intervallo di confidenza e (0.005, 1], e non contiene l’origine.

5.2 Test del Chi-quadrato per la verifica di proporzioni

Come abbiamo gia anticipato, il test del Chi-quadrato (χ2-test) puo essere utilizzato per confrontare due o piugruppi, per i quali sono stati utilizzati due o piu trattamenti.

Per illustrare il test, riprendiamo la tabella dell’Esempio 20, che e detta tabella di contingenza. Partiamodall’ipotesi nulla che l’aspirina non abbia alcun effetto nella prevenzione dell’infarto. In tal caso, la proporzionetotale di infartuati, che e p = 378/22071 = 0.0171, dovrebbe essere la stessa sia per il gruppo di controllo cheper il gruppo di trattamento. In tal caso, dovremmo aspettarci una tabella di questo tipo:

Esito Infartuati Non Infartuati TotaliFarmacoPlacebo 189 10845 11034Aspirina 189 10848 11037

378 21693 22071

Ottenere questa tabella e abbastanza semplice: si parte dalla tabella contenente i totali parziali

Esito Infartuati Non Infartuati TotaliFarmacoPlacebo . . 11034Aspirina . . 11037

378 21693 22071

A questo punto, gli elementi mancanti vengono calcolati tenendo conto che, nella prima e seconda colonna, variportata rispettivamente una proporzione p e 1−p dell’ultima colonna contenente i totali parziali. Ad esempio,per calcolare il primo elemento (placebo/infartuati), basta moltiplicare 11034 per p = 0.0171 (nella tabellaabbiamo gia arrotondato i risultati). Otteniamo in questo modo la tabella delle frequenze attese (nell’ipotesi dinessuna efficacia del trattamento).Siamo ora pronti per il calcolo della statistica χ2 (chi-quadrato). Per ogni casella della tabella 2 × 2 (sonoescluse le caselle dei totali parziali e globali) si calcola la quantita

(frequenza osservata− frequenza attesa)2

frequenza attesa. (21)

La statistica χ2 e definita come la somma di tutti questi termini; nel caso dell’esempio che stiamo considerandosi ottiene

χ2 =(239 − 189)2

189+

(139 − 189)2

189+

(10795− 10845)2

10845+

(10898 − 10848)2

10848= 26.9 .

Fissato ora il livello di significativita α = 0.01, dobbiamo determinare l’opportuno quantile della distribuzionechi-quadrato da confrontare col valore ottenuto. Come abbiamo detto in precedenza, la distribuzione χ2 = χ2

ν

dipende dal parametro ν che rappresenta il numero di gradi di liberta. Nel caso di una tabella di contingenza,il numero di gradi di liberta e dato da

ν = numero di gradi di liberta = (numero di righe − 1) · (numero di colonne− 1) .

Laboratorio di Statistica 33

Nel nostro caso abbiamo quindi ν = (2− 1)(2− 1) = 1. Il quantile di ordine p = 1−α/2 = 0.995 (il test e a unacoda) della distribuzione χ2

1 vale 7.88 (si veda la Tabella 3), che e inferiore al valore calcolato 26.9. Possiamodunque rifiutare l’ipotesi nulla e concludere che il trattamento e efficace.R ha una funzione apposita, prop.test, per eseguire il test del χ2 per la verifica di proporzioni. Tale funzionerichiede in input un vettore contenente il numero di successi (239 e 139) e un vettore contenente le numerositadei rispettivi gruppi (11034 e 11037):

> prop.test(c(239, 139), c(11034, 11037), alternative="greater", conf.level=0.99)

2-sample test for equality of proportions with continuity correction

data: c(239, 139) out of c(11034, 11037)

X-squared = 26.4078, df = 1, p-value = 1.382e-07

alternative hypothesis: greater

99 percent confidence interval:

0.004914756 1.000000000

sample estimates:

prop 1 prop 2

0.02166032 0.01259400

Il valore calcolato di χ2 (26.4) e leggermente diverso da quello calcolato precedentemente (26.9). Questo edovuto al fatto che, per le tabelle 2 × 2, R utilizza la correzione di Yates (o correzione di continuita): itermini definiti in (21) vengono sostituiti da

(

|frequenza osservata− frequenza attesa| − 1/2)2

frequenza attesa. (22)

Per l’analisi di tabelle di contingenza con piu di due righe o colonne si puo usare la funzione ‘chisq.test’,come mostrato nel seguente esempio.

Esempio 21. I pezzi difettosi prodotti da un certo impianto vengono classificati nelle categorie A, B, C, D inbase al tipo di difetto riscontrato. La seguente tabella di contingenza riporta il numero di pezzi difettosi pertipo e per turno di lavoro (1, 2 o 3) riscontrati in un certo periodo di tempo.

Tipo di difettoTurno A B C D Totale

1 15 21 45 13 942 26 31 34 5 963 33 17 49 20 119

Totale 74 69 128 38 309

Vogliamo stabilire se il tipo di difetto riscontrato e indipendente dal turno di lavoro.

Con R possiamo eseguire il test del chi-quadrato sulla tabella di contingenza assegnata come segue.

> x <- matrix(c(15, 26, 33, 21, 31, 17, 45, 34, 49, 13, 5, 20), nr=3); x

[,1] [,2] [,3] [,4]

[1,] 15 21 45 13

[2,] 26 31 34 5

[3,] 33 17 49 20

> chisq.test(x)

Pearson’s Chi-squared test

data: x

X-squared = 19.178, df = 6, p-value = 0.003873

Poiche il p-value e inferiore a 0.01, possiamo affermare con un livello di confidenza del 99% che esiste unadipendenza fra il tipo di difetto riscontrato e il turno di lavoro.

5.3 Test esatto di Fisher

Vediamo come si puo utilizzare, con R, il test esatto di Fisher. Consideriamo l’esempio di Glantz, pag. 145.

34 G. Crasta

Presentazione corretta del test?Rivista Si No TotaleNew England Journal of Medicine 1 8 9The Lancet 10 4 14Totale 11 12 23

> Presentazione <- matrix(c(1,10,8,4), nr=2,

+ dimnames = list( c("New England J.M.", "The Lancet"), c("Si", "No")))

> Presentazione

Si No

New England J.M. 1 8

The Lancet 10 4

> # Test esatto di Fisher (di default a due code)

> fisher.test(Presentazione, conf.level=0.99)

Fisher’s Exact Test for Count Data

data: Presentazione

p-value = 0.009423

alternative hypothesis: true odds ratio is not equal to 1

99 percent confidence interval:

0.0002191231 1.1005539883

sample estimates:

odds ratio

0.05851868

Dal momento che il p-value e basso (inferiore a 0.01), possiamo concludere che c’e una differenza significativanella presentazione corretta del test fra le riviste New England Journal of Medicine e The Lancet.

6 Metodi non parametrici

I metodi non parametrici che vedremo in questo paragrafo sono adatti in quei casi per i quali non sia possibileutilizzare l’analisi della varianza. Ricordiamo che le tecniche di analisi della varianza (incluso il test t) sonobasate sull’assunto che le osservazioni siano tratte da popolazioni di valori normalmente distribuiti e con lastessa varianza. Non sempre questa condizione e soddisfatta (nemmeno in maniera approssimativa). Inoltre imetodi non parametrici sono adatti per l’analisi di variabili misurate su scale ordinali. I due test che vedremo(test di Mann-Whitney e test di Wilcoxon) non richiedono nessuna ipotesi sulla distribuzione della popolazione,e sono adatti anche per l’analisi di dati misurati su scale ordinali. Essi possono essere entrambi eseguiti con Rattraverso la funzione ‘wilcox.test’. In entrambi i test confronteremo i dati provenienti da due popolazioni Xe Y ; l’ipotesi nulla H0 e l’ipotesi alternativa H1 saranno

H0: la distribuzione delle due popolazioni X e Y e identica;

H1: le due distribuzioni differiscono solo per una traslazione (test a due code); oppure

H1: la distribuzione della popolazione X e traslata verso sinistra (risp. verso destra) rispetto alla distribuzionedella popolazione Y (test a una coda).

6.1 Test di Mann-Whitney

Supponiamo di avere un campione X1, . . . , XnPdi ampiezza nP tratto dalla popolazione X e un campione

Y1, . . . , YnGdi ampiezza nG tratto dalla popolazione Y . Supporremo, da ora in avanti, che nP ≤ nG (altrimenti

basta scambiare il ruolo di X e di Y ). Ordiniamo le n = nP + nG osservazioni, e associamo a ciascuna di esseil suo numero d’ordine. Sommiamo poi, separatamente, i numeri d’ordine associati alle osservazioni X e alleosservazioni Y . L’unica accortezza da usare e che, se due (o piu) osservazioni coincidono, assegnamo un numerod’ordine (non necessariamente intero) pari alla media dei numeri d’ordine di tali osservazioni.

Esempio 22. Abbiamo due tipi di colture di batteri, X e Y . Per ognuna di queste colture effettuiamo quattroosservazioni, nelle quali conteggiamo il numero di batteri per unita di volume. I conteggi per la coltura X sono27, 31, 26, 25, mentre quelli per la coltura Y sono 32, 29, 35, 27.Per calcolare la somma dei ranghi, mettiamo in ordine crescente i conteggi:

25(X), 26(X), 27(X), 27(Y ), 29(Y ), 31(X), 32(Y ), 35(Y ).

Laboratorio di Statistica 35

I relativi numeri d’ordine sono

1(X), 2(X), 3.5(X), 3.5(Y ), 5(Y ), 6(X), 7(Y ), 8(Y ) .

Si osservi come, agli elementi di posto 3 e 4, che valgono entrambi 27, e stato assegnato lo stesso rango3.5 = (3 + 4)/2. Di conseguenza, le somme dei ranghi per le popolazioni X e Y sono rispettivamente

TX = 1 + 2 + 3.5 + 6 = 12.5, TY = 3.5 + 5 + 7 + 8 = 23.5 .

E chiaro che, se le distribuzioni X e Y coincidono, bisogna aspettarsi che le somme dei ranghi siano “vicine”,in quanto i due campioni hanno la stessa numerosita. Se n = nP + nG, la somma totale dei ranghi sara pari a∑n

k=1k = n(n+1)/2. Nel caso dell’Esempio 22, la somma totale dei ranghi e dunque 8·9/2 = 36. Concentriamoci

sulla somma T relativa al campione meno numeroso; se i due campioni hanno la stessa numerosita, possiamoscegliere indifferentemente uno dei due. Nel nostro caso scegliamo, ad esempio, T = TX . Il valore minimodi T che si puo ottenere, con nP = nG = 4, sara 1 + 2 + 3 + 4 = 10; analogamente, il valore massimo sara5 + 6 + 7 + 8 = 26. Osserviamo che sia il valore minimo che il valore massimo si possono ottenere in un solocaso (vale a dire, o le quattro osservazioni X sono le piu piccole oppure sono le piu grandi). In generale, adogni possibile scelta di quattro elementi dall’insieme 1, 2, 3, 4, 5, 6, 7, 8 associamo la loro somma T . Si puodimostrare che il numero di possibili scelte e dato da

(

84

)

=8!

4!(8 − 4)!=

8 · 7 · 6 · 54 · 3 · 2 = 70.

(Per semplicita trascuriamo la possibilita di avere misure uguali e ranghi non interi.) Qual e la probabilita diottenere uno dei due valori estremi (10 e 26), nell’ipotesi che le distribuzioni X e Y coincidano? Abbiamo giadetto che le somme 10 e 26 si possono ottenere ciascuna in un solo caso. Di conseguenza, la probabilita diosservare una di queste due somme sara pari a p = 2/70 = 0.0286 (inferiore al 3%). Analogamente, i valoriT = 11 e T = 25 si possono ottenere rispettivamente solo con le osservazioni 1, 2, 3, 5 e 4, 6, 7, 8. Di conseguenza,la probabilita di avere T ≤ 11 oppure T ≥ 25 sara pari a p = 4/70 = 0.0571, cioe di circa il 5.7%. In questomodo possono essere individuati i valori critici per la statistica; nella tabella relativa al test di Mann-Whitney(cfr. par. 10.6 oppure Glantz, pag. 345) sono indicati, in ogni riga, il valore di nP , il valore di nG, i valori criticiT1 e T2, e la probabilita P di avere T ≤ T1 oppure T ≥ T2. Al crescere del numero di osservazioni i valoridi P non sono piu tabulati, ma e possibile approssimare questa distribuzione di probabilita discreta con unadistribuzione normale di media e varianza dati rispettivamente da

µT =nP (nP + nG + 1)

2, σ2

T =nP nG(nP + nG + 1)

12,

in modo da poter utilizzare il test statistico

zT =|T − µT | − 1/2

σT

dove si e gia tenuto conto della correzione per la continuita. Utilizzando R non dobbiamo preoccuparci di questidettagli.

Esempio 23 (Glantz, pag. 347). Sono stati misurati i minuti di attivita vigile nella prima ora dopo la nascita di40 neonati. Di questi, 20 sono nati col parto tradizionale, mentre altri 20 col metodo di Leboyer. Le misurazionisono le seguenti:- parto tradizionale: 5.0, 10.1, 17.7, 20.3, 22.0, 24.9, 26.5, 30.8, 34.2, 35.0, 36.6, 37.9, 40.4, 45.5, 49.3, 51.1, 53.1,55.0, 56.7, 58.0;- metodo Leboyer: 2.0, 19.0, 29.7, 32.1, 35.4, 36.7, 38.5, 40.2, 42.1, 43.0, 44.4, 45.6, 46.7, 47.1, 48.0, 49.0, 50.9,51.2, 52.5, 53.3.

> # Mann-Whitney (Glantz, p. 347)

> x <- c(5.0, 10.1, 17.7, 20.3, 22.0, 24.9, 26.5, 30.8, 34.2,

+ 35.0, 36.6, 37.9, 40.4, 45.5, 49.3, 51.1, 53.1, 55.0, 56.7, 58.0)

> y <- c(2.0, 19.0, 29.7, 32.1, 35.4, 36.7, 38.5, 40.2, 42.1, 43.0, 44.4,

+ 45.6, 46.7, 47.1, 48.0, 49.0, 50.9, 51.2, 52.5, 53.3)

> wilcox.test(x, y, conf.level=0.95)

Wilcoxon rank sum test

data: x and y

W = 164, p-value = 0.3408

alternative hypothesis: true mu is not equal to 0

36 G. Crasta

Osserviamo che, in questo caso, T = 374; R restituisce invece il valore

W = T − np(np + 1)

2= 164,

dove np = 20 indica, in generale, la numerosita del campione piu piccolo. Poiche il p-value e circa 0.34,non possiamo rifiutare l’ipotesi nulla e dunque concludiamo che non c’e una differenza significativa fra i duetrattamenti. Osserviamo che R restituisce il valore della statistica W , che e legata a T dalla relazione W =T − nP (nP + 1)/2.

6.2 Test di Wilcoxon

Il test di Wilcoxon si utilizza quando ogni soggetto viene osservato prima e dopo un unico trattamento. Adifferenza del test t per dati appaiati (si veda il Paragrafo 4.3), non e pero necessario assumere che la popolazionesia distribuita normalmente e che la scala di misura sia intervallare. Un gruppo di n soggetti viene osservatoprima e dopo un solo trattamento, fornendo quindi due campioni X1, . . . , Xn e Y1, . . . , Yn. Possiamo dunquecalcolare l’effetto del trattamento su ogni soggetto, che sara la differenza fra la misura dopo il trattamento equella prima del trattamento: di = Yi − Xi, i = 1, . . . , n. Ordiniamo i valori assoluti di queste differenze eassegnamo a ciascuno di essi un rango (come abbiamo fatto nel test di Mann-Whitney). In seguito, sommiamoinsieme i ranghi relativi ai di < 0 e quelli relativi ai di > 0 (i soggetti per i quali di = 0 vengono preventivamenteeliminati). Indicate con W− e W+ queste somme di ranghi, calcoliamo la differenza W = W+ − W−. Se iltrattamento non ha avuto effetto, e poco probabile che questa differenza sia “grande” in valore assoluto. Perstabilire cosa significhi “grande” si ragiona come nel test di Mann-Whitney. Supponiamo di avere n = 6individui. Il valore piu grande di W , in valore assoluto, si ottiene quando W+ e massimo e W− e minimo, oviceversa. Nel primo caso, le differenze di saranno tutte positive (quindi W+ = 1 + 2 + 3 + 4 + 5 + 6 = 21,W− = 0, e W = 21), mentre nel secondo saranno tutte negative (quindi W+ = 0, W− = 21, e W = −21). Perogni numero intero W ∗ compreso fra 0 e 21 possiamo calcolare la probabilita di avere |W | ≥ W ∗, nell’ipotesiche il trattamento non abbia effetto. In questo modo possiamo costruire la statistica che ci serve. Il calcoloesplicito di queste probabilita e piuttosto macchinoso; per questo motivo i valori sono tabulati (cfr. la tabellanel par. 10.7 oppure Glantz, pag. 357). Ricordiamo infine che, per valori di n abbastanza grandi, la statistica

Z =W+ − n(n + 1)/4

n(n + 1)(2n + 1)/24

(e analogamente per W−) si distribuisce approssimativamente come la normale standard; analogo risultato valeanche per la variabile

Z =W − 2

n(n + 1)(2n + 1)/6.

Con R il test puo essere eseguito in uno dei seguenti due modi equivalenti; nel primo si usano i vettori delledue serie di osservazioni, nel secondo il vettore delle differenze.

Esempio 24 (Glantz, pag. 359). Riprendiamo l’Esempio 17, in cui abbiamo analizzato (col test t per datiappaiati) i risultati di un esperimento nel quale veniva misurata l’aggregazione piastrinica in n = 11 soggetti,prima e dopo che essi avevano fumato una sigaretta. Un boxplot (oppure un istogramma) delle differenzedi mostra che la distribuzione di tali differenze non e particolarmente simmetrica, quindi potrebbe essere piuprudente utilizzare un test che, a differenza del test t, non assuma che queste siano distribuite normalmente.Eseguiamo il test di Wilcoxon utilizzando R.

> # Wilcoxon (Glantz p. 359)

> prima <- c(25, 25, 27, 44, 30, 67, 53, 53, 52, 60, 28)

> dopo <- c(27, 29, 37, 56, 46, 82, 57, 80, 61, 59, 43)

> wilcox.test(prima, dopo, paired=TRUE, conf.level=0.95)

Wilcoxon signed rank test with continuity correction

data: prima and dopo

V = 1, p-value = 0.005056

alternative hypothesis: true mu is not equal to 0

Warning message:

Cannot compute exact p-value with ties in ...

> # equivalente:

Laboratorio di Statistica 37

> wilcox.test(dopo-prima, conf.level=0.95)

Wilcoxon signed rank test with continuity correction

data: dopo - prima

V = 65, p-value = 0.005056

alternative hypothesis: true mu is not equal to 0

Warning message:

Cannot compute exact p-value with ties in ...

Poiche il p-value e basso (inferiore all’1%) possiamo concludere che il fumo produce un effetto significativosull’aggregazione piastrinica (allo stesso risultato eravamo giunti usando il test t per dati appaiati).

7 Calcolo della potenza di un test

L’ambiente R dispone delle seguenti funzioni per il calcolo della potenza di un test: power.anova.test,power.prop.test e power.t.test. Queste funzioni possono essere utilizzate per calcolare la potenza dei testche abbiamo visto nei paragrafi 4 e 5.

Esempio 25. Riprendiamo l’esempio considerato nel paragrafo 4.1 riguardante le donne che praticano mezzofon-do (cfr. Glantz, pag. 55). Siamo in presenza di k = 3 gruppi aventi ciascuno numerosita n = 26. Ricordiamo cheabbiamo indicato con x e varx i vettori contenenti rispettivamente le medie e le varianze dei gruppi. Possiamodunque calcolare la potenza del test utilizzando la funzione power.anova.test (per maggiori dettagli si vedal’help di R digitando ?power.anova.test dal prompt di R).

> x

[1] 11.615385 10.057692 9.134615

> varx

[1] 1.786154 4.586538 5.731154

> n <- 26

> power.anova.test(groups = length(x), between.var=n*var(x), n=n,

+ within.var=mean(varx), sig.level=0.01)

Balanced one-way analysis of variance power calculation

groups = 3

n = 26

between.var = 40.875

within.var = 4.034615

sig.level = 0.01

power = 1

NOTE: n is number in each group

Esempio 26. Consideriamo l’esempio trattato nel paragrafo 4.2 (cfr. Glantz, Es. 4.2 pag. 108), dove abbiamoutilizzato il test t di Student per stabilire l’efficacia della Nifedipina nella riduzione della pressione arteriosa.Calcoliamo la potenza del test con R.

> placebo <- c(156,171,133,102,129,150,120,110,112,130,105)

> nifedipina <- c(73,81,103,88,130,106,106,111,122,108,99)

> var.comb <- (var(placebo)+var(nifedipina))/2

> var.comb

[1] 390.2818

> delta <- mean(placebo) - mean(nifedipina)

> delta

[1] 26.45455

> power.t.test(n=11, delta=delta, sd=sqrt(var.comb), sig.level=0.05,

+ type="two.sample", alternative="one.sided")

Two-sample t test power calculation

n = 11

38 G. Crasta

delta = 26.45455

sd = 19.75555

sig.level = 0.05

power = 0.9172314

alternative = one.sided

NOTE: n is number in *each* group

L’analogo calcolo al livello di significativita α = 0.01 fornisce una potenza del test di 0.73.

Esempio 27. Riprendiamo l’esempio 20, relativo all’uso dell’Aspirina per la prevenzione dell’infarto. La funzionepower.prop.test, che serve per il calcolo della potenza del test, prevede che i due gruppi studiati abbiamo lastessa numerosita. Nel nostro caso i due gruppi sono composti rispettivamente da 11034 e 11037 elementi. Incaso di differente numerosita, la stima piu prudente si ottiene utilizzando la piu piccola numerosita n = 11034.(Per una data numerosita complessiva del campione totale, la potenza e massima quando tutti i gruppi hannola stessa numerosita.)

> power.prop.test(n=11034, p1=239/11034, p2=139/11037, sig.level=0.01,

+ alternative="one.sided")

Two-sample comparison of proportions power calculation

n = 11034

p1 = 0.02166032

p2 = 0.01259400

sig.level = 0.01

power = 0.9979195

alternative = one.sided

NOTE: n is number in *each* group

Notiamo subito che, grazie all’elevato numero di osservazioni, il test ha una potenza molto elevata anche allivello di significativita α = 0.01.

Negli esempi che abbiamo appena visto, abbiamo calcolato la potenza del test a posteriori. In realta, questomodo di agire non e corretto. Per progettare correttamente un test, occorre stabilire a priori: il livello disignificativita α, la potenza che deve avere il test (ad esempio, almeno il 50%), e l’entita dell’effetto che si vuoleosservare. Naturalmente, il punto piu difficile e proprio quest’ultimo, in quanto si richiede che lo sperimentatoresia in grado di valutare, prima di effettuare la sperimentazione, quale debba essere l’entita dell’effetto daconsiderare significativa. Una volta fissati questi tre parametri, e possibile calcolare la numerosita campionarianecessaria per raggiungere la potenza stabilita.

Esempio 28. Ci si aspetta che l’uso del trattamento A aumenti, rispetto al trattamento B, il peso medio di unacerta varieta di pomodori. La deviazione standard del peso dei pomodori e stimata in σ = 30g; lo sperimentatoree interessato ad osservare un eventuale aumento di circa δ0 = 25g, soglia al di sotto della quale il trattamento Anon sarebbe economicamente conveniente rispetto a B. Quale ampiezza campionaria e necessaria per condurreun test ad un livello di significativita α = 0.05 e con potenza non inferiore all’80%?L’analisi statistica della sperimentazione in questione puo essere condotta utilizzando il test t di Student descrittonel paragrafo 4.2. Progettiamo il test in maniera tale da utilizzare due gruppi di n elementi ciascuno; sul primoutilizzeremo il trattamento A, sul secondo il trattamento B. Ricordiamo che la statistica t, definita in (14), edata da

t =X1 − X2

S2/n + S2/n,

dove X1 e X2 sono le medie campionarie e S2 indica la stima aggregata della varianza. Poiche X1 − X2 euna stima campionaria della differenza delle medie δ = µ1 − µ2, il valore di t calcolato sopra e una stima dellavariabile aleatoria

T =δ

σ2/n + σ2/n=

δ

σ

n

2.

Definiamo il parametro di non centralita

φ =δ

σ,

che sara una quantita adimensionale (in questo caso e il rapporto fra due pesi espressi in grammi). In termini diφ, il nostro test deve essere in grado di rilevare, al livello di significativita α = 0.05 e con una potenza dell’80%,

Laboratorio di Statistica 39

una variazione pari a

φ0 =δ0

σ=

25

30≃ 0.83 .

Il valore di t corrispondente e

t0 = φ0

n

2.

Affinche il test (a una coda) abbia una potenza dell’80%, il quantile di ordine 1 − α della distribuzione t diStudent con ν = 2(n−1) gradi di liberta deve essere inferiore all’errore di tipo II β = 0.20 (ricordiamo che 1−βrappresenta la potenza del test). Iniziamo a calcolare il quantile tα2n−2 di ordine 1 − α della distribuzione t diStudent con ν = 2n− 2 gradi di liberta. Il valore dell’errore di tipo II β e dato dall’area della distribuzione t diStudent che descrive la statistica della popolazione B; supponendo che δ = δ0, tale distribuzione e centrata inφ0

n/2, quindi β e uguale alla funzione di ripartizione di T2n−2 calcolata in tα2n−2 − φ0

n/2. Con R i calcolisi possono eseguire in questo modo:

> beta <- function(n=10, phi=0, sig.level=0.05)

+ t <- qt(1-sig.level, 2*(n-1))

+ beta <- pt(t-phi*sqrt(n/2), 2*(n-1))

+

> plotpower <- function(n=2:50, phi=0)

+ #par(mfrow = c(1,2))

+ b <- beta(n=n, phi=phi, sig.level=0.05)

+ plot(n, 1-b, "l", xlab="", ylab="potenza")

+ b <- beta(n=n, phi=phi, sig.level=0.01)

+ lines(n, 1-b, lty=2)

+ legend(max(n)*0.6, 0.25, c("0.05", "0.01"), lty=c(1,2))

+

> # traccia il grafico della potenza

> plotpower(phi=25/30)

> # calcola il valore di n

> calcn <- function(phi=0, sig.level=0.05, power=0.80)

+ n <- uniroot(function(n) eval(beta(n, phi, sig.level)) - 1 + power,

+ c(2, 1e+07))$root

+ print(n)

+

> calcn(25/30)

[1] 18.59914

> calcn(25/30, sig.level=0.01)

[1] 30.22685

10 20 30 40 50

0.2

0.4

0.6

0.8

1.0

pote

nza

0.050.01

Figura 12: Potenza del test in funzione di n, per α = 0.05 e α = 0.01

Il grafico della potenza in funzione della numerosita campionaria (per i livelli di significativita α = 0.05 e 0.01)e rappresentato in Figura 12. Per ottenere una potenza dell’80% al livello di significativita α = 0.05 occorrescegliere n = 19 (al livello α = 0.01 occorre invece n = 30). Anziche effettuare i calcoli direttamente comesopra, possiamo calcolare la numerosita campionaria utilizzando la funzione power.t.test di R:

> power.t.test(n=NULL, delta=25, sd=30, sig.level=0.05, power=0.80,

+ type="two.sample", alternative="one.sided")

40 G. Crasta

Two-sample t test power calculation

n = 18.52111

delta = 25

sd = 30

sig.level = 0.05

power = 0.8

alternative = one.sided

NOTE: n is number in *each* group

La chiamata della funzione power.t.test col parametro ‘n=NULL’ indica ad R che deve essere calcolata lanumerosita campionaria n (tutti gli altri parametri devono invece essere specificati). La piccola discrepanzafra il valore calcolato prima (n = 18.59914) e quello calcolato dalla funzione power.t.test (n = 18.52111) edovuta al fatto che R utilizza una correzione di non centralita sulla distribuzione t di Student.

8 Verifica di relazione tra variabili

8.1 Regressione lineare

Molto spesso ci si aspetta che due variabili numeriche siano in relazione lineare una con l’altra. Ad esempio, cisi puo aspettare (almeno approssimativamente) che il peso di un individuo dipenda in maniera lineare dalla suaaltezza. Dato quindi un insieme di valori (xi, yi), i = 1, . . . , N , vogliamo determinare una retta nel piano xy cheapprossimi il meglio possibile (nel senso che spiegheremo fra poco) la distribuzione dei punti (xi, yi) nel piano.Quantificheremo inoltre la bonta di questa approssimazione con un numero detto coefficiente di correlazione.Lo studio di questo problema e detto regressione lineare.

Veniamo ora alla descrizione del problema. In generale avremo una variabile indipendente x (ad esempio,l’altezza di una popolazione) e una variabile dipendente y (ad esempio, il peso della popolazione). Ci aspettiamoche fra x e y intercorra una relazione lineare del tipo

y = α + β x .

Il parametro α e l’ordinata all’origine (o intercetta, in inglese intercept), mentre il parametro β e il coefficienteangolare della retta (in inglese slope). Nella realta non si osserva mai una relazione deterministica fra x e y comequella scritta sopra: ad esempio, se riportiamo in un grafico i valori (altezza,peso), e praticamente impossibileche questi punti stiano tutti su una stessa retta. Il modello che si adotta dal punto di vista statistico e ilseguente. Per ogni valore della variabile indipendente x, supponiamo di avere una variabile aleatoria Y = Yx

tale cheE(Yx) = α + β x

o, equivalentemente,Yx = α + β x + ǫ,

dove ǫ e una variabile aleatoria avente media nulla. Per semplificare il modello si assume che ǫ non dipenda da x;come conseguenza, al variare di x le variabili aleatorie Yx hanno media data da α+β x, ma la loro distribuzionemantiene sempre la stessa forma e, in particolare, la stessa varianza. Vogliamo ora stimare i due parametri αe β a partire dai dati osservati. Indicheremo con a e b queste stime; essi saranno l’intercetta e il coefficienteangolare di una retta, detta retta di regressione o retta dei minimi quadrati. Supponiamo dunque diavere i punti (xi, yi), i = 1, . . . , n, con le xi non tutte coincidenti. Vogliamo calcolare l’equazione della rettache meglio approssima l’andamento di questi dati, nel senso spiegato di seguito. In generale i punti (xi, yi) nonstaranno su questa retta; possiamo definire le quantita ǫi tramite la relazione

yi = a + b xi + ǫi, i = 1, . . . , n .

In altri termini, ǫi = yi − (a + b xi) e la differenza fra l’ordinata del punto (xi, yi) e quella del punto di ascissaxi sulla retta di regressione. Tali quantita sono anche dette residui (residuals in inglese). Vogliamo oradeterminare a e b in modo da minimizzare la somma dei quadrati degli errori

n∑

i=1

ǫ2i =

n∑

i=1

(yi − a − b xi)2 .

Sviluppando i quadrati a secondo membro, otteniamo che

n∑

i=1

ǫ2i = (ΣY 2) + n a2 + b2(ΣX2) − 2a(ΣY ) − 2b(ΣXY ) + 2a b(ΣX), (23)

Laboratorio di Statistica 41

dove

ΣX =

n∑

i=1

xi, ΣY =

n∑

i=1

yi, ΣXY =

n∑

i=1

xi yi, ΣX2 =

n∑

i=1

x2i , ΣY 2 =

n∑

i=1

y2i .

Minimizziamo ora la somma dei quadrati degli errori. I valori di a e b che minimizzano il secondo membro di(23) sono quelli tali che le derivate rispetto ad a e b di tale quantita sono nulle, cioe

2n a − 2(ΣY ) + 2b(ΣX) = 0,

2b(ΣX2) − 2(ΣXY ) + 2a(ΣX) = 0 .

Risolvendo questo sistema (ad esempio per sostituzione) otteniamo

a =(ΣY )(ΣX2) − (ΣX)(ΣXY )

n(ΣX2) − (ΣX)2,

b =n(ΣXY ) − (ΣX)(ΣY )

n(ΣX2) − (ΣX)2.

(24)

Un indice della “forza dell’associazione” fra le due variabili e dato dal coefficiente di correlazione di Pearson,definito da

r =Σ(X − X)(Y − Y )

Σ(X − X)2 Σ(Y − Y )2=

Σ(X − X)(Y − Y )

(n − 1)SX SY. (25)

E facile verificare che si ha sempre −1 ≤ r ≤ 1; inoltre r = ±1 quando tutti i dati osservati (xi, yi) stannoesattamente sulla retta di regressione y = a + b x (in particolare, r = 1 se b > 0, mentre r = −1 se b < 0). Laquantita

cov(X, Y ) =Σ(X − X)(Y − Y )

n − 1=

1

n − 1

[

ΣXY − 1

n(ΣX)(ΣY )

]

. (26)

e anche detta covarianza campionaria, e con R si calcola col comando cov(X,Y). In particolare, abbiamo che

r =cov(X, Y )

SX SY.

Essa e uno stimatore corretto e coerente della covarianza delle variabili aleatorie X e Y , definita da

Cov(X, Y ) = E[(X − E(X)) · (Y − E(Y ))] .

Si puo dimostrare che, se le variabili aleatorie X e Y sono indipendenti, allora Cov(X, Y ) = 0. Inoltre, lavariabile

t =r

(1 − r2(n − 2)∼ tn−2

si distribuisce come la variabile t di Student con n − 2 gradi di liberta.Da un punto di vista operativo, utilizzando una calcolatrice scientifica per il calcolo della retta di regressione

puo essere conveniente procedere come segue. A partire dalla tabella dei dati grezzi, si calcolano innanzituttole quantita ΣX , ΣY , ΣXY , ΣX2, ΣY 2, S2

X , S2Y . (Alcune di queste quantita non servono per il calcolo della

retta di regressione, ma verranno utilizzate in seguito.) In caso la calcolatrice non fornisca automaticamenteS2

X (e S2Y ), si puo utilizzare la formula

S2X =

1

n − 1

[

ΣX2 − 1

n(ΣX)2

]

(e analogamente per S2Y ). Si calcola a questo punto la covarianza campionaria, utilizzando l’espressione a destra

nella formula (26). Questo permette di calcolare subito il parametro b, in quanto e facile verificare che

b =cov(X, Y )

S2X

.

Indicate con X = (ΣX)/n e Y = (ΣY )/n le medie delle variabili Xi e Yi, si puo calcolare il coefficiente a conla formula

a = Y − b X.

Esempio 29. Empiricamente si osserva che il numero massimo di battiti cardiaci al minuto di una persona sialegato all’eta della persona. Supponiamo di avere effettuato le seguenti osservazioni:

Eta 18 23 25 35 65 54 34 56 72 19 23 42 18 39 37Battiti 202 186 187 180 156 169 174 172 153 199 193 174 198 183 178

42 G. Crasta

Determiniamo la retta di regressione e il coefficiente di correlazione.

> # Regressione lineare

> x <- c(18, 23, 25, 35, 65, 54, 34, 56, 72, 19, 23, 42, 18, 39, 37)

> y <- c(202, 186, 187, 180, 156, 169, 174, 172, 153, 199, 193,

+ 174, 198, 183, 178)

> # Rappresenta i dati

> plot(x,y, xlab="Eta’", ylab="Battiti")

> # Calcola i parametri della regressione

> lm.res <- lm(y ~x)

> # Traccia sul grafico la retta di regressione

> abline(lm.res)

> # Riassunto dei dati sulla regressione

> summary(lm.res)

Call:

lm(formula = y ~ x)

Residuals:

Min 1Q Median 3Q Max

-8.9258 -2.5383 0.3879 3.1867 6.6242

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 210.04846 2.86694 73.27 < 2e-16 ***

x -0.79773 0.06996 -11.40 3.85e-08 ***

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.578 on 13 degrees of freedom

Multiple R-Squared: 0.9091, Adjusted R-squared: 0.9021

F-statistic: 130 on 1 and 13 DF, p-value: 3.848e-08

20 30 40 50 60 70

160

170

180

190

200

Eta’

Bat

titi

Figura 13: Retta di regressione dell’Esempio 29

Vediamo dunque che le stime per l’intercetta a e per il coefficiente angolare b sono date da a = 210.04846 eb = −0.79773. La struttura ‘lm.res’, calcolata col comando ‘lm.res <- lm(y ∼ x)’ contiene un certo numerodi dati sulla regressione lineare (e possibile vedere con ‘names(lm.res)’ tutti i dati calcolati). Per fare qualcheesempio:

> # Intercetta e coefficiente angolare

> lm.res$coefficients

(Intercept) x

210.0484584 -0.7977266

> # Residui

> lm.res$residuals

1 2 3 4 5 6 7

6.3106197 -5.7007474 -3.1052943 -2.1280287 -2.1962317 2.0287761 -8.9257552

Laboratorio di Statistica 43

8 9 10 11 12 13 14

6.6242292 0.3878543 4.1083463 1.2992526 -2.5439427 2.3106197 4.0628776

15

-2.5325755

> # Valori sulla retta di regressione, a + b * x[i]

> lm.res$fitted.values

1 2 3 4 5 6 7 8

195.6894 191.7007 190.1053 182.1280 158.1962 166.9712 182.9258 165.3758

9 10 11 12 13 14 15

152.6121 194.8917 191.7007 176.5439 195.6894 178.9371 180.5326

Per eseguire dei test statistici sui parametri α e β della retta di regressione, l’ipotesi standard e che gli errori(definiti da ǫ = Y −α−β x) siano indipendenti e si distribuiscano normalmente con media 0 e una certa varianzaσ2. Uno stimatore corretto di σ2 e dato da

S2 =1

n − 2

n∑

i=1

ǫ2i =n − 1

n − 2

(

S2Y − b2 S2

X

)

. (27)

Analogamente, si puo dimostrare che i coefficienti a e b, calcolati in (24), sono stimatori corretti rispettivamentedi α e β. Gli errori standard di a e b sono dati rispettivamente da

Sa = S

1

n+

X2

Σ(X − X)2=

S

SX

ΣX2

n(n − 1), Sb =

S√

Σ(X − X)2=

S

SX

√n − 1

,

dove S e l’errore standard della stima definito in (27). (Questi sono gli errori standard che, nell’Esempio 29,sono stati forniti da R col comando ‘summary(lm.res)’ nelle voci relative ai coefficienti. Il valore di S comparesotto la voce ‘Residual standard error’.) Inoltre, le statistiche

t =a − α

Sa, t =

b − β

Sb

si distribuiscono come la variabile aleatoria t di Student con ν = n − 2 gradi di liberta.L’ipotesi che piu frequentemente si sottopone a verifica riguarda l’esistenza di una relazione lineare fra le

variabili. L’ipotesi nulla H0 e dunque che non ci sia alcuna relazione lineare fra X e Y (osserviamo che cionon esclude la possibilita che ci sia una relazione di altro tipo). Se H0 e vera, dobbiamo avere β = 0. Possiamodunque calcolare il valore t = b/Sb e confrontarlo col valore critico t∗, ottenuto dalla distribuzione t di Studentcon ν = n−2 gradi di liberta al dato livello di significativita. Come al solito, se |t| < t∗ accettiamo l’ipotesi nullache non ci sia una relazione lineare fra le variabili, mentre se |t| > t∗ rifiutiamo l’ipotesi nulla e concludiamoche esiste una relazione lineare fra le variabili. R effettua automaticamente questo test di ipotesi; tornandoall’Esempio 29, nella riga relativa al coefficiente angolare x compaiono, oltre al valore stimato b = −0.79773 eall’errore standard Sb = 0.06996, anche il valore t = b/Sb = −11.40 e il p-value 3.85 · 10−8. Poiche il p-valuee molto basso abbiamo una forte evidenza che esista una correlazione lineare fra le variabili (possiamo cioerifiutare l’ipotesi nulla che non ci sia una correlazione lineare).

Naturalmente il t-test puo essere eseguito anche utilizzando gli intervalli di confidenza. L’intervallo diconfidenza per il coefficiente β, al prefissato livello di significativita, sara

b − t∗ · Sb < β < b + t∗ · Sb .

Se tale intervallo contiene lo 0 allora accettiamo l’ipotesi nulla, mentre se non contiene lo 0 la rifiutiamo. Pertornare all’Esempio 29, abbiamo ν = 15 − 2 = 13 gradi di liberta; il valore critico per il test a due code adun livello di significativita dell’1% e t∗ = 3.012 (si veda la Tabella 5). Poiche b = −0.79773 e Sb = 0.06996,otteniamo dunque l’intervallo di confidenza

b − t∗ · Sb = −1.008 < β < −0.587 = b + t∗ · Sb ,

quindi rifiutiamo l’ipotesi nulla e concludiamo che esiste una relazione lineare tra le variabili.

8.2 Test del chi-quadrato di adattamento

Il test del chi-quadrato di adattamento (χ2-test di adattamento, in inglese χ2 goodness of fit test) si utilizzaper verificare se i dati sperimentali provengono da una specifica popolazione. Vediamo subito alcuni esempi,che analizzeremo in seguito.

Esempio 30. Un dado viene lanciato n = 1000 volte, e vengono osservate le seguenti frequenze:

44 G. Crasta

1 2 3 4 5 6158 141 183 162 185 171

Vogliamo stabilire se il dado e regolare o truccato.

Esempio 31. Gregor Mendel, nei suoi studi sulla teoria dell’ereditarieta, ottenne i seguenti dati nell’incrocio frasemi di piselli rotondi e gialli con semi di piselli grinzosi e verdi:

Freq. osservate Freq. teoricherotondi e gialli 315 312.75grinzosi e gialli 101 104.25rotondi e verdi 108 104.25grinzosi e verdi 32 34.75

Vogliamo stabilire se le frequenze osservate si adattano bene alle frequenze teoriche calcolate in base alle leggidella teoria mendeliana sui caratteri dominanti (che prevedono frequenze nelle proporzioni 9, 3, 3, 1).

In entrambi gli esempi conosciamo la popolazione “teorica”: nel primo caso sappiamo che, se il dado e regolare,le frequenze devono essere tutte uguali, mentre nel secondo caso sappiamo che, se le leggi di Mendel sono corrette,allora le frequenze sono nelle proporzioni 9, 3, 3, 1.

Piu in generale, supponiamo avere un fenomeno casuale X tale che in ciascun esperimento Xi gli esiti possibilisiano in tutto k, e cioe ω1, . . . , ωk (nell’Esempio 30 abbiamo k = 6, mentre nell’Esempio 31 si ha k = 4).Per ogni esito ωi e assegnata una probabilita teorica pi (nell’Esempio 30 si ha p1 = · · · = p6 = 1/6, mentrenell’Esempio 31 si ha p1 = 9/16, p2 = p3 = 3/16, p4 = 1/16).

Supponiamo ora di effettuare n esperimenti X1, . . . , Xn, e di rilevare le frequenze osservate n1, . . . , nk.Calcoliamo ora il consuntivo aleatorio

L2 =

k∑

i=1

(ni − n pi)2

n pi.

Osserviamo che, per ogni i = 1, . . . , k, la quantita n0i = n pi rappresenta la frequenza teorica dell’i-esimo evento

ωi. Si puo dimostrare che, se le frequenze teoriche sono tutte maggiori di 5, cioe se n0i > 5 per ogni i = 1, . . . , k,

allora L2 si distribuisce come la variabile aleatoria χ2k−1 del chi-quadrato con ν = k − 1 gradi di liberta.

Eseguiamo ora l’analisi statistica dei dati forniti negli Esempi 30 e 31. Per quanto riguarda l’Esempio 30,abbiamo p1 = . . . = p6 = 1/6; poiche n = 1000, le frequenze teoriche sono

n01 = . . . = n0

6 = 1000 · 1

6.

Di conseguenza

L2 =6

1000

[

(

158 − 1000

6

)2

+

(

141 − 1000

6

)2

+

(

183 − 1000

6

)2

+

(

162 − 1000

6

)2

+

(

185 − 1000

6

)2

+

(

171 − 1000

6

)2]

= 8.264 .

D’altra parte, il valore critico della distribuzione χ25 relativo al livello di significativita α = 0.01 vale circa 15.09

(si veda la Tabella 3). Possiamo dunque concludere che il dado e regolare. Con R il test puo essere eseguito nelseguente modo:

> x <- c(158, 141, 183, 162, 185, 171)

> chisq.test(x, p=rep(1/6, 6))

Chi-squared test for given probabilities

data: x

X-squared = 8.264, df = 5, p-value = 0.1423

Osserviamo che gli argomenti della funzione ‘chisq.test’ sono il vettore x delle frequenze osservate, e il vettorep = (1/6, 1/6, 1/6, 1/6, 1/6, 1/6) delle probabilita teoriche (o attese). Il p-value e sufficientemente elevato, quindinon possiamo rifiutare l’ipotesi nulla che il dado sia regolare.

Riprendiamo ora l’Esempio 31.

> x <- c(315, 101, 108, 32)

> p <- c(9, 3, 3, 1)/16

> chisq.test(x, p=p)

Laboratorio di Statistica 45

Chi-squared test for given probabilities

data: x

X-squared = 0.47, df = 3, p-value = 0.9254

In questo caso il valore del consuntivo e L2 = 0.47, mentre il valore critico al livello di significativita α = 0.01,con ν = 3 gradi di liberta, vale circa 11.34. In questo caso l’adattamento e fin troppo buono (cio e indicatoanche dal p-value estremamente elevato). Gli storici ritengono in effetti che i dati siano stati “ritoccati” daMendel per rendere piu evidente l’adeguamento fra le frequenze osservate e quelle teoriche.

Adattamento ad una legge con parametri incogniti. Accade spesso che la distribuzione teorica che losperimentatore si attende dipenda da uno o piu parametri incogniti che vanno stimati dai dati osservati. Ilproblema e chiaramente piu complicato di quelli analizzati sopra. La regola generale da seguire e che ogni

parametro stimato toglie un grado di liberta; quindi, se abbiamo k = 10 classi e stimiamo due parametriincogniti, dovremo utilizzare la distribuzione del chi-quadrato con ν = 10−1−2 = 7 gradi di liberta. Discuteremosolo un esempio concreto.

Supponiamo che un ricercatore abbia effettuato le seguenti n = 50 misure:

8.5 8.4 8.8 7.7 9.7 11.0 8.1 7.0 9.4 11.8 8.2 8.5 7.3 11.5 10.3 9.0 8.15.3 9.3 9.6 10.0 10.4 11.0 8.3 6.5 8.5 8.6 11.4 5.6 5.6 9.7 10.8 10.9 10.39.6 10.4 11.1 8.8 6.4 7.9 11.8 8.1 9.3 11.3 13.5 6.8 12.1 8.2 8.7 12.1

Il ricercatore ipotizza che i dati provengano da una legge normale (di media µ e varianza σ2 incognite). Cichiediamo se questa ipotesi sia ragionevolmente vera o no.

In questo caso i problemi sono due: prima dobbiamo stimare (a partire dai dati sperimentali) i parametriincogniti µ e σ, poi dobbiamo vedere se i dati sperimentali stessi si adattano alla distribuzione teorica (quellanormale di media µ e varianza σ2). La media µ e la varianza σ2 della popolazione possono essere stimatirispettivamente dalla media campionaria e dalla varianza campionaria, che valgono rispettivamente X = 9.22e S2

X = 3.47. Vogliamo ora vedere se i dati si adattano alla distribuzione teorica X ∼ N(X, S2X). Per

poter eseguire il test del chi-quadrato di adattamento, dobbiamo prima suddividere i dati in classi e calcolare lefrequenze osservate e teoriche. Ricordiamo che, affinche il test sia attendibile, le frequenze teoriche devono esseremaggiori di 5. Poiche abbiamo complessivamente 50 osservazioni, questo significa che dovremo avere meno di 10classi. Ad esempio, possiamo scegliere come numero di classi k = 8 e richiedere che in ogni classe la frequenzateorica sia almeno 6. Un modo di procedere e il seguente. Scegliamo k − 1 = 7 valori x1 < x2 < . . . < x7 inmodo che

P (X < xi) =i

8, i = 1, . . . , 7.

In altri termini, xi e il quantile di ordine i/8 della distribuzione X ∼ N(X, S2X). Il calcolo, che puo essere

eseguito con R attraverso il comando ‘qnorm((1:7)/8, 3.22, sqrt(3.47))’ fornisce

x1 = 7.08, x2 = 7.96, x3 = 8.63, x4 = 9.22, x5 = 9.81, x6 = 10.48, x7 = 11.36 .

Definiamo, per comodita, x0 = −∞ e x8 = +∞, e suddividiamo i dati nelle 8 classi (xi−1, xi), i = 1, . . . , 8. Percostruzione, in ciascuna di queste 8 classi le frequenze teoriche sono n0

i = 50/8 = 6.25, in quanto la probabilitache xi−1 < X < xi vale 1/8 per ogni i. Le frequenze osservate nelle classi sono

n1 = 7, n2 = 3, n3 = 11, n4 = 4, n5 = 7, n6 = 5, n7 = 6, n8 = 7 .

Il calcolo di L2 fornisce L2 = 6.64. Questo valore va confrontato col valore critico della distribuzione chi-quadrato con ν = 8− 1− 2 = 5 gradi di liberta. Al livello di significativita α = 0.01, tale valore critico e 15.09.Possiamo dunque accettare l’ipotesi del ricercatore e concludere che i dati provengono da una legge distribuitanormalmente.

9 Complementi

9.1 Variabili aleatorie

Riportiamo qui alcuni risultati sulle variabili aleatorie.

1. Se X e una variabile aleatoria continua con densita di probabilita f , c1, c2 ∈ R, e g1, g2 : R → R sonofunzioni, allora

E[g1(X)] =

∫ +∞

−∞

g1(y)f(y) dy, E[c1 g1(X) + c2 g2(X)] = c1 E[g1(X)] + c2 E[g2(X)].

46 G. Crasta

2. Se X1, . . . , Xn sono variabili aleatorie indipendenti, e se X = c1 X1 + . . .+cn Xn, con c1, . . . , cn ∈ R, allora

E[X ] =

n∑

i=1

ci E[Xi], Var[X ] =

n∑

i=1

c2i Var[Xi] .

3. Se X1, . . . , Xn sono variabili aleatorie indipendenti normalmente distribuite, con Xi ∼ N(µi, σ2i ) per

i = 1, . . . , n, e se X = c1 X1 + . . . + cn Xn, con c1, . . . , cn ∈ R, allora anche X e normalmente distribuitacon

E[X ] =n∑

i=1

ci µi, Var[X ] =n∑

i=1

c2i σ2

i .

4. Se X1, . . . , Xn sono variabili aleatorie continue indipendenti, con densita di probabilita f1, . . . , fn rispet-tivamente, e se g : R

n → R e una funzione, allora

E[g(X1, . . . , Xn)] =

Rn

g(x1, . . . , xn)f(x1) · · · f(xn) dx1 · · ·dxn.

9.2 Test t di Student

Riprendiamo la situazione descritta nel Paragrafo 4.2, che riguarda il confronto fra le medie di due popolazioni.Siano X11, X21, . . .Xn11 e X12, X22, . . . Xn22 due campioni indipendenti estratti da due popolazioni normaliaventi la stessa varianza σ2 e medie rispettivamente µ1 e µ2.

Dimostriamo che la variabile aleatoria

T =(X1 − X2) − (µ1 − µ2)

S√

1/n1 + 1/n2

, (28)

dove S2 e la stima combinata della varianza definita in (15), si distribuisce come la variabile aleatoria tν diStudent con ν = n1 + n2 − 2 gradi di liberta.

Cominciamo con l’osservare che, come conseguenza dei risultati esposti nel Paragrafo 9.1(3), la variabilealeatoria

Z =(X1 − X2) − (µ1 − µ2)

σ√

1/n1 + 1/n2

(29)

si distribuisce come la normale standard. Inoltre, la variabile aleatoria

W =(n1 + n2 − 2)S2

σ2=

1

σ2

n1∑

i=1

(Xi1 − X1)2 +

1

σ2

n2∑

i=1

(Xi2 − X2)2

e la somma di due variabili aleatorie χ2 indipendenti, con (n1 − 1) ed (n2 − 1) gradi di liberta rispettivamente.Di conseguenza, W ∼ χ2

ν . Inoltre, dalla definizione della variabile aleatoria di Student, abbiamo che

T =Z

W/ν=

(X1 − X2) − (µ1 − µ2)

S√

1/n1 + 1/n2

,

si distribuisce come la variabile t di Student con ν gradi di liberta.

9.3 Test F di Fisher

Riprendiamo quanto discusso nel Paragrafo 4.1. In particolare, vogliamo calcolare i valori di aspettazione diS2

entro e S2tra, gia indicati nelle formule (11) e (12) rispettivamente.

Ricordando le quantita definite in (7)–(9), abbiamo che

Xj = µ + τj + ǫj , ǫj :=1

nj

nj∑

i=1

ǫij , j = 1, . . . , k.

Inoltre, le variabili ǫij ∼ N(0, σ2) sono indipendenti per ipotesi, quindi E[ǫj ] = σ2/nj . Analogamente, avremoche

X = µ + τ + ǫ, con τ =1

N

k∑

j=1

nj τj , ǫ =1

N

k∑

j=1

nj∑

i=1

ǫij .

Poiche τj sono costanti, anche τ e una costante. Abbiamo inoltre che E[ǫ] = 0, Var[ǫ] = σ2/N .

Laboratorio di Statistica 47

Per quanto riguarda il calcolo del valore di aspettazione di S2entro, cominciamo con l’osservare che

SSentro =

k∑

j=1

nj∑

i=1

(Xij − Xj)2 =

k∑

j=1

nj∑

i=1

(ǫij − ǫj)2 =

k∑

j=1

nj∑

i=1

(ǫ2ij − 2ǫijǫj + ǫ2j) =

k∑

j=1

nj∑

i=1

ǫ2ij −k∑

j=1

nj ǫ2j .

Poiche E[ǫij ] = E[ǫj ] = 0, avremo che E[ǫ2ij ] = Var[ǫij ] = σ2 e E[ǫj ] = Var[ǫj ] = σ2/nj , da cui

E[S2entro] =

1

N − kE[SSentro] =

1

N − k

Nσ2 −k∑

j=1

njσ2

nj

= σ2 .

Infine, dal momento che (nj − 1)S2j /σ2 ∼ χ2

nj−1, avremo che

SSentro

σ2=

k∑

j=1

(nj − 1)S2j

σ2∼ χ2

N−k .

Per quanto riguarda il valore di aspettazione di S2tra, osserviamo che

SStra =

k∑

j=1

nj(Xj − X)2 =

k∑

j=1

nj(τj + ǫj − τ − ǫ)2

=

k∑

j=1

nj(τj − τ )2 +

k∑

j=1

nj(ǫj − ǫ)2 +

k∑

j=1

2nj(τj − τ )(ǫj − ǫ)

(30)

Poiche τj , τ sono costanti e E[ǫj ] = E[ǫ] = 0, i termini dell’ultima sommatoria hanno tutti valore di aspettazionenullo. Abbiamo dunque che

E[SStra] =k∑

j=1

nj(τj − τ )2 + E

k∑

j=1

nj(ǫj − ǫ)2

. (31)

Osserviamo ora chek∑

j=1

nj(ǫj − ǫ)2 =

k∑

j=1

(njǫ2j − 2njǫjǫ + njǫ

2) =

k∑

j=1

njǫ2j − Nǫ2.

Poiche E[ǫj ] = 0, abbiamo che E[ǫ2j ] = Var[ǫj ] = σ2/nj; analogamente si ha E[ǫ2] = Var[ǫ2] = σ2/N e, diconseguenza,

E

k∑

j=1

nj(ǫj − ǫ)2

=

k∑

j=1

njσ2

nj− N

σ2

N= (k − 1)σ2

Sostituendo in (31) otteniamo che

E[SStra] = (k − 1)σ2 +

k∑

j=1

nj(τj − τ)2 ,

da cui segue immediatamente (12).Se l’ipotesi nulla e vera, cioe se τ1 = τ2 = · · · = τk = 0, segue in particolare che E[S2

tra] = σ2. Inoltre, in talcaso, da (30) si ha che

SStra =k∑

j=1

nj(ǫj − ǫ)2 (se H0 e vera).

Si puo dimostrare, ma la dimostrazione non e semplice, che in questo caso SStra/σ2 ∼ χ2k−1.

48 G. Crasta

10 Tabelle

10.1 Distribuzione Chi-quadrato

Probabilita di valori minori

ν 0.005 0.01 0.05 0.1 0.9 0.95 0.975 0.99 0.995

1 0.00 0.00 0.00 0.02 2.71 3.84 5.02 6.63 7.88

2 0.01 0.02 0.10 0.21 4.61 5.99 7.38 9.21 10.60

3 0.07 0.11 0.35 0.58 6.25 7.81 9.35 11.34 12.84

4 0.21 0.30 0.71 1.06 7.78 9.49 11.14 13.28 14.86

5 0.41 0.55 1.15 1.61 9.24 11.07 12.83 15.09 16.75

6 0.68 0.87 1.64 2.20 10.64 12.59 14.45 16.81 18.55

7 0.99 1.24 2.17 2.83 12.02 14.07 16.01 18.48 20.28

8 1.34 1.65 2.73 3.49 13.36 15.51 17.53 20.09 21.95

9 1.73 2.09 3.33 4.17 14.68 16.92 19.02 21.67 23.59

10 2.16 2.56 3.94 4.87 15.99 18.31 20.48 23.21 25.19

11 2.60 3.05 4.57 5.58 17.28 19.68 21.92 24.72 26.76

12 3.07 3.57 5.23 6.30 18.55 21.03 23.34 26.22 28.30

13 3.57 4.11 5.89 7.04 19.81 22.36 24.74 27.69 29.82

14 4.07 4.66 6.57 7.79 21.06 23.68 26.12 29.14 31.32

15 4.60 5.23 7.26 8.55 22.31 25.00 27.49 30.58 32.80

16 5.14 5.81 7.96 9.31 23.54 26.30 28.85 32.00 34.27

17 5.70 6.41 8.67 10.09 24.77 27.59 30.19 33.41 35.72

18 6.26 7.01 9.39 10.86 25.99 28.87 31.53 34.81 37.16

19 6.84 7.63 10.12 11.65 27.20 30.14 32.85 36.19 38.58

20 7.43 8.26 10.85 12.44 28.41 31.41 34.17 37.57 40.00

21 8.03 8.90 11.59 13.24 29.62 32.67 35.48 38.93 41.40

22 8.64 9.54 12.34 14.04 30.81 33.92 36.78 40.29 42.80

23 9.26 10.20 13.09 14.85 32.01 35.17 38.08 41.64 44.18

24 9.89 10.86 13.85 15.66 33.20 36.42 39.36 42.98 45.56

25 10.52 11.52 14.61 16.47 34.38 37.65 40.65 44.31 46.93

26 11.16 12.20 15.38 17.29 35.56 38.89 41.92 45.64 48.29

27 11.81 12.88 16.15 18.11 36.74 40.11 43.19 46.96 49.64

28 12.46 13.56 16.93 18.94 37.92 41.34 44.46 48.28 50.99

29 13.12 14.26 17.71 19.77 39.09 42.56 45.72 49.59 52.34

30 13.79 14.95 18.49 20.60 40.26 43.77 46.98 50.89 53.67

31 14.46 15.66 19.28 21.43 41.42 44.99 48.23 52.19 55.00

32 15.13 16.36 20.07 22.27 42.58 46.19 49.48 53.49 56.33

33 15.82 17.07 20.87 23.11 43.75 47.40 50.73 54.78 57.65

34 16.50 17.79 21.66 23.95 44.90 48.60 51.97 56.06 58.96

35 17.19 18.51 22.47 24.80 46.06 49.80 53.20 57.34 60.27

36 17.89 19.23 23.27 25.64 47.21 51.00 54.44 58.62 61.58

37 18.59 19.96 24.07 26.49 48.36 52.19 55.67 59.89 62.88

38 19.29 20.69 24.88 27.34 49.51 53.38 56.90 61.16 64.18

39 20.00 21.43 25.70 28.20 50.66 54.57 58.12 62.43 65.48

40 20.71 22.16 26.51 29.05 51.81 55.76 59.34 63.69 66.77

45 24.31 25.90 30.61 33.35 57.51 61.66 65.41 69.96 73.17

50 27.99 29.71 34.76 37.69 63.17 67.50 71.42 76.15 79.49

60 35.53 37.48 43.19 46.46 74.40 79.08 83.30 88.38 91.95

70 43.28 45.44 51.74 55.33 85.53 90.53 95.02 100.43 104.21

80 51.17 53.54 60.39 64.28 96.58 101.88 106.63 112.33 116.32

90 59.20 61.75 69.13 73.29 107.57 113.15 118.14 124.12 128.30

100 67.33 70.06 77.93 82.36 118.50 124.34 129.56 135.81 140.17

Tabella 3: Quantili della distribuzione χ2ν

Laboratorio di Statistica 49

10.2 Distribuzione normale standard

x P (Z < x)

0.0 0.5000.1 0.5400.2 0.5790.3 0.6180.4 0.6550.5 0.6910.6 0.7260.7 0.7580.8 0.7880.9 0.8161.0 0.8411.1 0.8641.2 0.8851.3 0.9031.4 0.9191.5 0.933

x P (Z < x)

1.6 0.9451.7 0.9551.8 0.9641.9 0.9712.0 0.9772.1 0.9822.2 0.9862.3 0.9892.4 0.9922.5 0.9942.6 0.9952.7 0.9972.8 0.9972.9 0.9983.0 0.9993.1 0.999

P (Z < x) x

0.500 0.0000.525 0.0630.550 0.1260.575 0.1890.600 0.2530.625 0.3190.650 0.3850.675 0.4540.700 0.5240.725 0.5980.750 0.6740.775 0.7550.800 0.8420.825 0.9350.850 1.0360.875 1.150

P (Z < x) x

0.900 1.2820.910 1.3410.920 1.4050.930 1.4760.940 1.5550.950 1.6450.955 1.6950.960 1.7510.965 1.8120.970 1.8810.975 1.9600.980 2.0540.985 2.1700.990 2.3260.995 2.5760.999 3.090

Tabella 4: Funzione di ripartizione e quantili della normale standard

10.3 Distribuzione t di Student

ν t (0.05)

1 12.7062 4.3033 3.1824 2.7765 2.5716 2.4477 2.3658 2.3069 2.262

10 2.228

ν t (0.05)

11 2.20112 2.17913 2.16014 2.14515 2.13116 2.12017 2.11018 2.10119 2.09320 2.086

ν t (0.05)

30 2.04240 2.02150 2.00960 2.00070 1.99480 1.99090 1.987

100 1.984200 1.972

1000 1.962

ν t (0.01)

1 63.6572 9.9253 5.8414 4.6045 4.0326 3.7077 3.4998 3.3559 3.250

10 3.169

ν t (0.01)

11 3.10612 3.05513 3.01214 2.97715 2.94716 2.92117 2.89818 2.87819 2.86120 2.845

ν t (0.01)

30 2.75040 2.70450 2.67860 2.66070 2.64880 2.63990 2.632

100 2.626200 2.601

1000 2.581

Tabella 5: Valori critici di t corrispondenti a P = 0.05 e P = 0.01, test a due code

ν t (0.05)

1 6.3142 2.9203 2.3534 2.1325 2.0156 1.9437 1.8958 1.8609 1.833

10 1.812

ν t (0.05)

11 1.79612 1.78213 1.77114 1.76115 1.75316 1.74617 1.74018 1.73419 1.72920 1.725

ν t (0.05)

30 1.69740 1.68450 1.67660 1.67170 1.66780 1.66490 1.662

100 1.660200 1.653

1000 1.646

ν t (0.01)

1 31.8212 6.9653 4.5414 3.7475 3.3656 3.1437 2.9988 2.8969 2.821

10 2.764

ν t (0.01)

11 2.71812 2.68113 2.65014 2.62415 2.60216 2.58317 2.56718 2.55219 2.53920 2.528

ν t (0.01)

30 2.45740 2.42350 2.40360 2.39070 2.38180 2.37490 2.368

100 2.364200 2.345

1000 2.330

Tabella 6: Valori critici di t corrispondenti a P = 0.05 e P = 0.01, test a una coda

50 G. Crasta

10.4 Distribuzione F di Fisher

νd νn=1 2 3 4 5 6 7 8 9 10 15 20

1 161.45 199.50 215.71 224.58 230.16 233.99 236.77 238.88 240.54 241.88 245.95 248.01

2 18.51 19.00 19.16 19.25 19.30 19.33 19.35 19.37 19.38 19.40 19.43 19.45

3 10.13 9.55 9.28 9.12 9.01 8.94 8.89 8.85 8.81 8.79 8.70 8.66

4 7.71 6.94 6.59 6.39 6.26 6.16 6.09 6.04 6.00 5.96 5.86 5.80

5 6.61 5.79 5.41 5.19 5.05 4.95 4.88 4.82 4.77 4.74 4.62 4.56

6 5.99 5.14 4.76 4.53 4.39 4.28 4.21 4.15 4.10 4.06 3.94 3.87

7 5.59 4.74 4.35 4.12 3.97 3.87 3.79 3.73 3.68 3.64 3.51 3.44

8 5.32 4.46 4.07 3.84 3.69 3.58 3.50 3.44 3.39 3.35 3.22 3.15

9 5.12 4.26 3.86 3.63 3.48 3.37 3.29 3.23 3.18 3.14 3.01 2.94

10 4.96 4.10 3.71 3.48 3.33 3.22 3.14 3.07 3.02 2.98 2.85 2.77

11 4.84 3.98 3.59 3.36 3.20 3.09 3.01 2.95 2.90 2.85 2.72 2.65

12 4.75 3.89 3.49 3.26 3.11 3.00 2.91 2.85 2.80 2.75 2.62 2.54

13 4.67 3.81 3.41 3.18 3.03 2.92 2.83 2.77 2.71 2.67 2.53 2.46

14 4.60 3.74 3.34 3.11 2.96 2.85 2.76 2.70 2.65 2.60 2.46 2.39

15 4.54 3.68 3.29 3.06 2.90 2.79 2.71 2.64 2.59 2.54 2.40 2.33

16 4.49 3.63 3.24 3.01 2.85 2.74 2.66 2.59 2.54 2.49 2.35 2.28

17 4.45 3.59 3.20 2.96 2.81 2.70 2.61 2.55 2.49 2.45 2.31 2.23

18 4.41 3.55 3.16 2.93 2.77 2.66 2.58 2.51 2.46 2.41 2.27 2.19

19 4.38 3.52 3.13 2.90 2.74 2.63 2.54 2.48 2.42 2.38 2.23 2.16

20 4.35 3.49 3.10 2.87 2.71 2.60 2.51 2.45 2.39 2.35 2.20 2.12

21 4.32 3.47 3.07 2.84 2.68 2.57 2.49 2.42 2.37 2.32 2.18 2.10

22 4.30 3.44 3.05 2.82 2.66 2.55 2.46 2.40 2.34 2.30 2.15 2.07

23 4.28 3.42 3.03 2.80 2.64 2.53 2.44 2.37 2.32 2.27 2.13 2.05

24 4.26 3.40 3.01 2.78 2.62 2.51 2.42 2.36 2.30 2.25 2.11 2.03

25 4.24 3.39 2.99 2.76 2.60 2.49 2.40 2.34 2.28 2.24 2.09 2.01

26 4.23 3.37 2.98 2.74 2.59 2.47 2.39 2.32 2.27 2.22 2.07 1.99

27 4.21 3.35 2.96 2.73 2.57 2.46 2.37 2.31 2.25 2.20 2.06 1.97

28 4.20 3.34 2.95 2.71 2.56 2.45 2.36 2.29 2.24 2.19 2.04 1.96

29 4.18 3.33 2.93 2.70 2.55 2.43 2.35 2.28 2.22 2.18 2.03 1.94

30 4.17 3.32 2.92 2.69 2.53 2.42 2.33 2.27 2.21 2.16 2.01 1.93

Tabella 7: Valori critici di F corrispondenti a P = 0.05

νd νn=1 2 3 4 5 6 7 8 9 10 15 20

1 4052.18 4999.50 5403.35 5624.58 5763.65 5858.99 5928.36 5981.07 6022.47 6055.85 6157.28 6208.73

2 98.50 99.00 99.17 99.25 99.30 99.33 99.36 99.37 99.39 99.40 99.43 99.45

3 34.12 30.82 29.46 28.71 28.24 27.91 27.67 27.49 27.35 27.23 26.87 26.69

4 21.20 18.00 16.69 15.98 15.52 15.21 14.98 14.80 14.66 14.55 14.20 14.02

5 16.26 13.27 12.06 11.39 10.97 10.67 10.46 10.29 10.16 10.05 9.72 9.55

6 13.75 10.92 9.78 9.15 8.75 8.47 8.26 8.10 7.98 7.87 7.56 7.40

7 12.25 9.55 8.45 7.85 7.46 7.19 6.99 6.84 6.72 6.62 6.31 6.16

8 11.26 8.65 7.59 7.01 6.63 6.37 6.18 6.03 5.91 5.81 5.52 5.36

9 10.56 8.02 6.99 6.42 6.06 5.80 5.61 5.47 5.35 5.26 4.96 4.81

10 10.04 7.56 6.55 5.99 5.64 5.39 5.20 5.06 4.94 4.85 4.56 4.41

11 9.65 7.21 6.22 5.67 5.32 5.07 4.89 4.74 4.63 4.54 4.25 4.10

12 9.33 6.93 5.95 5.41 5.06 4.82 4.64 4.50 4.39 4.30 4.01 3.86

13 9.07 6.70 5.74 5.21 4.86 4.62 4.44 4.30 4.19 4.10 3.82 3.66

14 8.86 6.51 5.56 5.04 4.69 4.46 4.28 4.14 4.03 3.94 3.66 3.51

15 8.68 6.36 5.42 4.89 4.56 4.32 4.14 4.00 3.89 3.80 3.52 3.37

16 8.53 6.23 5.29 4.77 4.44 4.20 4.03 3.89 3.78 3.69 3.41 3.26

17 8.40 6.11 5.18 4.67 4.34 4.10 3.93 3.79 3.68 3.59 3.31 3.16

18 8.29 6.01 5.09 4.58 4.25 4.01 3.84 3.71 3.60 3.51 3.23 3.08

19 8.18 5.93 5.01 4.50 4.17 3.94 3.77 3.63 3.52 3.43 3.15 3.00

20 8.10 5.85 4.94 4.43 4.10 3.87 3.70 3.56 3.46 3.37 3.09 2.94

21 8.02 5.78 4.87 4.37 4.04 3.81 3.64 3.51 3.40 3.31 3.03 2.88

22 7.95 5.72 4.82 4.31 3.99 3.76 3.59 3.45 3.35 3.26 2.98 2.83

23 7.88 5.66 4.76 4.26 3.94 3.71 3.54 3.41 3.30 3.21 2.93 2.78

24 7.82 5.61 4.72 4.22 3.90 3.67 3.50 3.36 3.26 3.17 2.89 2.74

25 7.77 5.57 4.68 4.18 3.85 3.63 3.46 3.32 3.22 3.13 2.85 2.70

26 7.72 5.53 4.64 4.14 3.82 3.59 3.42 3.29 3.18 3.09 2.81 2.66

27 7.68 5.49 4.60 4.11 3.78 3.56 3.39 3.26 3.15 3.06 2.78 2.63

28 7.64 5.45 4.57 4.07 3.75 3.53 3.36 3.23 3.12 3.03 2.75 2.60

29 7.60 5.42 4.54 4.04 3.73 3.50 3.33 3.20 3.09 3.00 2.73 2.57

30 7.56 5.39 4.51 4.02 3.70 3.47 3.30 3.17 3.07 2.98 2.70 2.55

Tabella 8: Valori critici di F corrispondenti a P = 0.01

Laboratorio di Statistica 51

10.5 Valori critici per il test SNK

αT = 0.05νd p = 2 3 4 5 6 7 8 9 10

2 6.080 8.331 9.799 10.881 11.734 12.435 13.028 13.542 13.994

3 4.501 5.910 6.825 7.502 8.037 8.478 8.852 9.177 9.462

4 3.927 5.040 5.757 6.287 6.706 7.053 7.347 7.602 7.826

5 3.635 4.602 5.218 5.673 6.033 6.330 6.582 6.801 6.995

6 3.460 4.339 4.896 5.305 5.628 5.895 6.122 6.319 6.493

7 3.344 4.165 4.681 5.060 5.359 5.606 5.815 5.997 6.158

8 3.261 4.041 4.529 4.886 5.167 5.399 5.596 5.767 5.918

9 3.199 3.948 4.415 4.755 5.024 5.244 5.432 5.595 5.738

10 3.151 3.877 4.327 4.654 4.912 5.124 5.304 5.460 5.598

11 3.113 3.820 4.256 4.574 4.823 5.028 5.202 5.353 5.486

12 3.081 3.773 4.199 4.508 4.750 4.950 5.119 5.265 5.395

13 3.055 3.734 4.151 4.453 4.690 4.884 5.049 5.192 5.318

14 3.033 3.701 4.111 4.407 4.639 4.829 4.990 5.130 5.253

15 3.014 3.673 4.076 4.367 4.595 4.782 4.940 5.077 5.198

16 2.998 3.649 4.046 4.333 4.557 4.741 4.896 5.031 5.150

17 2.984 3.628 4.020 4.303 4.524 4.705 4.858 4.991 5.108

18 2.971 3.609 3.997 4.276 4.494 4.673 4.824 4.955 5.071

19 2.960 3.593 3.977 4.253 4.468 4.645 4.794 4.924 5.037

20 2.950 3.578 3.958 4.232 4.445 4.620 4.768 4.895 5.008

24 2.919 3.532 3.901 4.166 4.373 4.541 4.684 4.807 4.915

30 2.888 3.486 3.845 4.102 4.301 4.464 4.601 4.720 4.824

40 2.858 3.442 3.791 4.039 4.232 4.388 4.521 4.634 4.735

60 2.829 3.399 3.737 3.977 4.163 4.314 4.441 4.550 4.646

120 2.800 3.356 3.685 3.917 4.096 4.241 4.363 4.468 4.560

αT = 0.01νd p = 2 3 4 5 6 7 8 9 10

2 13.902 19.015 22.564 25.372 27.757 29.856 31.730 33.412 34.926

3 8.260 10.620 12.170 13.322 14.239 14.998 15.646 16.212 16.713

4 6.511 8.120 9.173 9.958 10.583 11.101 11.542 11.925 12.263

5 5.702 6.976 7.804 8.421 8.913 9.321 9.669 9.971 10.239

6 5.243 6.331 7.033 7.556 7.972 8.318 8.612 8.869 9.097

7 4.949 5.919 6.542 7.005 7.373 7.678 7.939 8.166 8.367

8 4.745 5.635 6.204 6.625 6.959 7.237 7.474 7.680 7.863

9 4.596 5.428 5.957 6.347 6.657 6.915 7.134 7.325 7.494

10 4.482 5.270 5.769 6.136 6.428 6.669 6.875 7.054 7.213

11 4.392 5.146 5.621 5.970 6.247 6.476 6.671 6.841 6.992

12 4.320 5.046 5.502 5.836 6.101 6.320 6.507 6.670 6.814

13 4.260 4.964 5.404 5.726 5.981 6.192 6.372 6.528 6.666

14 4.210 4.895 5.322 5.634 5.881 6.085 6.258 6.409 6.543

15 4.167 4.836 5.252 5.556 5.796 5.994 6.162 6.309 6.438

16 4.131 4.786 5.192 5.489 5.722 5.915 6.079 6.222 6.348

17 4.099 4.742 5.140 5.430 5.659 5.847 6.007 6.147 6.270

18 4.071 4.703 5.094 5.379 5.603 5.787 5.944 6.081 6.201

19 4.046 4.669 5.054 5.334 5.553 5.735 5.889 6.022 6.141

20 4.024 4.639 5.018 5.293 5.510 5.688 5.839 5.970 6.086

24 3.955 4.546 4.907 5.168 5.373 5.542 5.685 5.809 5.919

30 3.889 4.455 4.799 5.048 5.242 5.401 5.536 5.653 5.756

40 3.825 4.367 4.695 4.931 5.114 5.265 5.392 5.502 5.599

60 3.762 4.282 4.594 4.818 4.991 5.133 5.253 5.356 5.447

120 3.702 4.200 4.497 4.709 4.872 5.005 5.118 5.214 5.299

52 G. Crasta

10.6 Valori critici per il test di Mann-Whitney (a due code)

nP nG T1 T2 P3 3 6 15 0.1

3 4 6 18 0.0571

3 4 7 17 0.1143

3 5 6 21 0.0357

3 5 7 20 0.0714

3 6 6 24 0.0238

3 6 7 23 0.0476

3 6 8 22 0.0952

3 7 6 27 0.0167

3 7 7 26 0.0333

3 7 8 25 0.0667

3 7 9 24 0.1167

3 8 6 30 0.0121

3 8 7 29 0.0242

3 8 8 28 0.0485

3 8 9 27 0.0848

3 9 7 32 0.0182

3 9 8 31 0.0364

3 9 9 30 0.0636

3 9 10 29 0.1

4 4 10 26 0.0286

4 4 11 25 0.0571

4 4 12 24 0.1143

4 5 10 30 0.0159

4 5 11 29 0.0317

4 5 12 28 0.0635

4 5 13 27 0.1111

4 6 11 33 0.019

4 6 12 32 0.0381

4 6 13 31 0.0667

4 6 14 30 0.1143

4 7 11 37 0.0121

4 7 12 36 0.0242

4 7 13 35 0.0424

4 7 14 34 0.0727

4 7 15 33 0.1091

4 8 12 40 0.0162

4 8 13 39 0.0283

4 8 14 38 0.0485

4 8 15 37 0.0727

4 8 16 36 0.1091

4 9 12 44 0.0112

4 9 13 43 0.0196

4 9 14 42 0.0336

4 9 15 41 0.0503

4 9 16 40 0.0755

4 9 17 39 0.1063

5 5 16 39 0.0159

5 5 17 38 0.0317

5 5 18 37 0.0556

5 5 19 36 0.0952

5 6 17 43 0.0173

5 6 18 42 0.0303

5 6 19 41 0.0519

5 6 20 40 0.0823

5 7 17 48 0.0101

5 7 18 47 0.0177

5 7 19 46 0.0303

5 7 20 45 0.048

5 7 21 44 0.0732

5 7 22 43 0.1061

5 8 18 52 0.0109

5 8 19 51 0.0186

5 8 20 50 0.0295

5 8 21 49 0.0451

5 8 22 48 0.0653

5 8 23 47 0.0932

5 9 19 56 0.012

5 9 20 55 0.019

5 9 21 54 0.029

5 9 22 53 0.042

5 9 23 52 0.0599

5 9 24 51 0.0829

5 9 25 50 0.1119

6 6 24 54 0.0152

6 6 25 53 0.026

6 6 26 52 0.0411

nP nG T1 T2 P6 6 27 51 0.0649

6 6 28 50 0.0931

6 7 25 59 0.014

6 7 26 58 0.0221

6 7 27 57 0.035

6 7 28 56 0.0513

6 7 29 55 0.0734

6 7 30 54 0.1014

6 8 26 64 0.0127

6 8 27 63 0.02

6 8 28 62 0.0293

6 8 29 61 0.0426

6 8 30 60 0.0593

6 8 31 59 0.0813

6 8 32 58 0.1079

6 9 27 69 0.012

6 9 28 68 0.0176

6 9 29 67 0.0256

6 9 30 66 0.036

6 9 31 65 0.0496

6 9 32 64 0.0663

6 9 33 63 0.0879

6 9 34 62 0.1135

7 7 33 72 0.0111

7 7 34 71 0.0175

7 7 35 70 0.0262

7 7 36 69 0.0379

7 7 37 68 0.053

7 7 38 67 0.0728

7 7 39 66 0.0973

7 8 35 77 0.014

7 8 36 76 0.0205

7 8 37 75 0.0289

7 8 38 74 0.0401

7 8 39 73 0.0541

7 8 40 72 0.0721

7 8 41 71 0.0939

7 9 36 83 0.0115

7 9 37 82 0.0164

7 9 38 81 0.0229

7 9 39 80 0.0311

7 9 40 79 0.0418

7 9 41 78 0.0549

7 9 42 77 0.0712

7 9 43 76 0.0907

7 9 44 75 0.1142

8 8 44 92 0.0104

8 8 45 91 0.0148

8 8 46 90 0.0207

8 8 47 89 0.0281

8 8 48 88 0.0379

8 8 49 87 0.0499

8 8 50 86 0.065

8 8 51 85 0.083

8 8 52 84 0.1049

8 9 46 98 0.0111

8 9 47 97 0.0152

8 9 48 96 0.0206

8 9 49 95 0.0274

8 9 50 94 0.036

8 9 51 93 0.0464

8 9 52 92 0.0592

8 9 53 91 0.0745

8 9 54 90 0.0927

8 9 55 89 0.1139

9 9 57 114 0.0106

9 9 58 113 0.0142

9 9 59 112 0.0188

9 9 60 111 0.0244

9 9 61 110 0.0315

9 9 62 109 0.04

9 9 63 108 0.0503

9 9 64 107 0.0625

9 9 65 106 0.077

9 9 66 105 0.0939

9 9 67 104 0.1135

(P = P (T ≤ T1) + P (T ≥ T2); per il test a una coda dividere per due il valore indicato di P )Per nP abbastanza grande, la variabile

Z =|T1 − µT | − 1/2

σT, µT :=

nP (nP + nG + 1)

2σT :=

nP nG(nP + nG + 1)

12

si distribuisce approssimativamente come la normale standard.

Laboratorio di Statistica 53

10.7 Valori critici per il test di Wilcoxon (a due code)

n W∗ P5 15 0.0625

6 21 0.0312

6 19 0.0625

6 17 0.0938

7 28 0.0156

7 26 0.0312

7 24 0.0469

7 22 0.0781

7 20 0.1094

8 34 0.0156

8 32 0.0234

8 30 0.0391

8 28 0.0547

8 26 0.0781

8 24 0.1094

9 41 0.0117

9 39 0.0195

9 37 0.0273

9 35 0.0391

9 33 0.0547

9 31 0.0742

9 29 0.0977

10 47 0.0137

10 45 0.0195

10 43 0.0273

10 41 0.0371

10 39 0.0488

10 37 0.0645

10 35 0.084

10 33 0.1055

11 54 0.0137

11 52 0.0186

11 50 0.0244

11 48 0.0322

11 46 0.042

11 44 0.0537

11 42 0.0674

11 40 0.083

11 38 0.1016

12 62 0.0122

12 60 0.0161

12 58 0.021

12 56 0.0269

12 54 0.0342

12 52 0.0425

12 50 0.0522

12 48 0.064

12 46 0.0771

12 44 0.0923

12 42 0.1099

13 71 0.0105

13 69 0.0134

13 67 0.0171

13 65 0.0215

13 63 0.0266

13 61 0.0327

13 59 0.0398

13 57 0.0479

13 55 0.0574

13 53 0.0681

13 51 0.0803

13 49 0.0942

13 47 0.1099

14 79 0.0107

14 77 0.0134

14 75 0.0166

14 73 0.0203

n W∗ P14 71 0.0245

14 69 0.0295

14 67 0.0353

14 65 0.0419

14 63 0.0494

14 61 0.058

14 59 0.0676

14 57 0.0785

14 55 0.0906

14 53 0.104

14 51 0.1189

15 88 0.0103

15 86 0.0125

15 84 0.0151

15 82 0.0181

15 80 0.0215

15 78 0.0256

15 76 0.0302

15 74 0.0353

15 72 0.0413

15 70 0.0479

15 68 0.0554

15 66 0.0637

15 64 0.073

15 62 0.0833

15 60 0.0946

15 58 0.107

16 96 0.011

16 94 0.0131

16 92 0.0155

16 90 0.0182

16 88 0.0214

16 86 0.025

16 84 0.029

16 82 0.0335

16 80 0.0386

16 78 0.0443

16 76 0.0507

16 74 0.0577

16 72 0.0654

16 70 0.0739

16 68 0.0833

16 66 0.0934

16 64 0.1046

16 62 0.1167

17 105 0.011

17 103 0.0129

17 101 0.015

17 99 0.0174

17 97 0.0202

17 95 0.0232

17 93 0.0267

17 91 0.0305

17 89 0.0348

17 87 0.0395

17 85 0.0448

17 83 0.0505

17 81 0.0569

17 79 0.0638

17 77 0.0714

17 75 0.0797

17 73 0.0887

17 71 0.0984

17 69 0.1089

18 115 0.0104

18 113 0.012

18 111 0.0139

n W∗ P18 109 0.0159

18 107 0.0182

18 105 0.0208

18 103 0.0237

18 101 0.0268

18 99 0.0304

18 97 0.0342

18 95 0.0385

18 93 0.0432

18 91 0.0483

18 89 0.0539

18 87 0.0599

18 85 0.0665

18 83 0.0737

18 81 0.0814

18 79 0.0898

18 77 0.0987

18 75 0.1084

18 73 0.1187

19 124 0.0108

19 122 0.0124

19 120 0.0141

19 118 0.016

19 116 0.0181

19 114 0.0204

19 112 0.023

19 110 0.0258

19 108 0.0289

19 106 0.0323

19 104 0.0361

19 102 0.0401

19 100 0.0446

19 98 0.0494

19 96 0.0546

19 94 0.0602

19 92 0.0663

19 90 0.0728

19 88 0.0799

19 86 0.0874

19 84 0.0955

19 82 0.1042

19 80 0.1134

20 134 0.0107

20 132 0.0121

20 130 0.0136

20 128 0.0153

20 126 0.0172

20 124 0.0192

20 122 0.0215

20 120 0.024

20 118 0.0266

20 116 0.0296

20 114 0.0328

20 112 0.0362

20 110 0.04

20 108 0.0441

20 106 0.0484

20 104 0.0532

20 102 0.0583

20 100 0.0637

20 98 0.0696

20 96 0.0759

20 94 0.0826

20 92 0.0897

20 90 0.0973

20 88 0.1054

20 86 0.114

(P = P (|W | ≥ W ∗); per il test a una coda dividere per due il valore indicato di P )Per n abbastanza grande, la statistica

Z =W − 2

n(n + 1)(2n + 1)/6

si distribuisce approssimativamente come la normale standard.