Ricerca Sociale con R

Una wiki per l'analisi dei dati con R

Strumenti Utente

Strumenti Sito


Il Laboratorio di Analisi dei Dati con R, dell'Università di Teramo su piattaforma Meet, inizia il 9 aprile 2021 - Iscrizione - email
r:test_statistici:test_t

Test t

Il test t (o t test) è un test parametrico di significatività statistica che utilizza la distribuzione t di Student per valutare la stima di una variabile o di un valore.

La distribuzione t di Student

La distribuzione dei valori t ha come suoi parametri la media e l'errore standard della media, e, per campioni grandi, non è sensibile agli scostamenti dalla normalità della forma della distribuzione.

La distribuzione t di Student

Inoltre, sempre per campioni grandi (maggiori di circa 30 casi), la distribuzione t tende a coincidere con la distribuzione normale standard (dei valori Z): come abbiamo visto e più volte ripetuto, infatti, all’aumentare delle dimensioni del campione, l’errore standard del campione tende a coincidere con la deviazione standard della popolazione.

Come si vede nella figura sopra, infatti, la curva con 3 gradi di libertà (df, degrees of freedom) è più larga e bassa rispetto alla curva con 30 df — che coincide quasi con la distribuzione normale.

I valori t di una variabile si calcolano come segue:

$$t\ =\ \frac{x_i-\ \mu}{ES}$$

Dove:

  • $\mu$ = parametro (media o altra statistica);
  • ES = errore standard di $\mu$.

In R, la distribuzione t è data dalla funzione dt(). Le funzioni qt() e pt() servono a consultare i valori della distribuzione (rispettivamente, quantili e probabilità).

Passiamo a vedere il test applicato alle medie, ma la logica del test è la stessa anche nel controllo di significatività di altre stime.

Test t del confronto fra medie

Il test confronta la differenza osservata fra due medie con la differenza attesa in caso di indipendenza statistica.

Il test viene tipicamente utilizzato nei disegni sperimentali: quello per campioni indipendenti è adatto nel caso di disegno con gruppo di controllo (con due gruppi sottoposti a diverse condizioni sperimentali); per i disegni sperimentali prima-dopo, ovvero quando si vogliano mettere a confronto i risultati di misurazioni diverse svolte sullo stesso gruppo, si utilizza il test per medie appaiate (dependent-means t-test).

Nell’ambito del disegno statistico (rilevazioni campionarie), è possibile utilizzare il test per campioni indipendenti per confrontare le medie fra gruppi definiti da una variabile categoriale, come, ad esempio, le medie delle retribuzioni fra uomini e donne.

I gruppi definiti dalla variabile indipendente non devono avere numerosità e varianza troppo diversi (omoschedasticità). La funzione test.t() effettua per default la correzione di Welch per gruppi con varianze diverse, quindi questo assunto non deve necessariamente essere controllato.

L’ipotesi nulla è che fra i gruppi non vi sia differenza:

  • nel test a due code, l’ipotesi nulla è che la differenza sia uguale 0;
  • nel test a una coda, l’ipotesi nulla è che la differenza non sia maggiore (o minore) di 0;

Il valore t che viene calcolato (-13.922) è quello della differenza fra le medie, e non quello delle medie.

Test a due code

# dati
data("SLID", package = "carData")
 
# test a due code
t.test(wages ~ sex, data = SLID,
       alternative = 'two.sided',     
       conf.level = .95)
 
##  	Welch Two Sample t-test
##  
##  data:  wages by sex
##  t = -13.922, df = 4044.9, p-value < 2.2e-16
##  alternative hypothesis: true difference in means is not equal to 0
##  95 percent confidence interval:
##   -3.801961 -2.863311
##  sample estimates:
##  mean in group Female   mean in group Male 
##              13.88958             17.22221       

L’ipotesi nulla può essere respinta (p è pari a 0). La differenza “reale” che possiamo attenderci nella popoazione è compresa fra −3,8 e −2,9 (il campione è tratto con p = 0.95 da una popolazione con differenza compresa in questo intervallo).

Test a una coda

Passiamo a controllare l’ipotesi che la retribuzione delle donne sia inferiore a quella degli uomini, con un test a una coda:

# test a due code
t.test(wages ~ sex, data = SLID,
       alternative = 'less',     
       conf.level = .95)
##  	Welch Two Sample t-test
##  
##  data:  wages by sex
##  t = -13.922, df = 4044.9, p-value < 2.2e-16
##  alternative hypothesis: true difference in means is less than 0
##  95 percent confidence interval:
##        -Inf -2.938794
##  sample estimates:
##  mean in group Female   mean in group Male 
##              13.88958             17.22221 

In questo caso, l’ipotesi nulla è che la vera differenza non sia minore di 0 (ovvero che sia uguale o maggiore), e può essere respinta. Il risultato del test è uguale a quello a due code, ma l’intervallo di confidenza è calcolato nella coda inferiore (< 0).

Script di esempio

E' possibile scaricare ed eseguire lo script dell'esempio:

test_t.R
# dati
data("SLID", package = "carData")
 
# test a due code
t.test(wages ~ sex, data = SLID,
       alternative = 'two.sided',     
       conf.level = .95)
 
# test a due code
t.test(wages ~ sex, data = SLID,
       alternative = 'less',     
       conf.level = .95)
r/test_statistici/test_t.txt · Ultima modifica: 26/09/2021 08:48 da admin