Parte IIIvenus.unive.it/stone/statcomp/lucidi/seconda.pdf · 2008-02-15 · Figura 3: I dati...

23
Regressione lineare semplice Parte III Regressione lineare Regressione lineare semplice Scopo Siamo interessati alle relazioni che esistono tra due variabili: Y , variabile quantitativa, detta variabile risposta; X , variabile esplicativa (o variabile indipendente o predittore o regressore o, pi` u raramente, covariata). Per il momento assumeremo che anche questa sia una variabile quantitativa, ma questa assunzione pu` o essere rimossa. In particolare, vogliamo capire se X eserciti qualche influenza su Y e come tale influenza possa manifestarsi. Regressione lineare semplice Il modello statistico Abbiamo bisogno di definire un modello statistico che leghi Y a X Modello statistico Rappresentazione semplificata, ma auspicabilmente soddisfacente, della realt` a osservabile

Transcript of Parte IIIvenus.unive.it/stone/statcomp/lucidi/seconda.pdf · 2008-02-15 · Figura 3: I dati...

Regressione lineare semplice

Parte III

Regressione lineare

Regressione lineare semplice

Scopo

Siamo interessati alle relazioni che esistono tra due variabili:

Y , variabile quantitativa, detta variabile risposta;

X , variabile esplicativa (o variabile indipendente o predittore oregressore o, piu raramente, covariata). Per il momentoassumeremo che anche questa sia una variabile quantitativa,ma questa assunzione puo essere rimossa.

In particolare, vogliamo capire se X eserciti qualche influenzasu Y e come tale influenza possa manifestarsi.

Regressione lineare semplice

Il modello statistico

Abbiamo bisogno di definire un modello statistico che leghi Y a X

Modello statistico

Rappresentazione semplificata, ma auspicabilmente soddisfacente,della realta osservabile

Regressione lineare semplice

Regressione lineare semplice

Ipotizziamo che Y possa essere modellata come una variabilecasuale: le osservazioni yi che rileviamo sulle unita statistichesono in qualche modo determinate dal caso.

La variabile X e invece considerata deterministica, noncasuale.

Sull’unita statistica i-esima la modalita xi e misurata senzaerrore

Regressione lineare semplice

Regressione lineare semplice

Come si manifesta l’influenza di X su Y ?

E(Y |X = x) = η(x ,β), β ∈ Rm, m ≥ 1

η(x ,β) si dice funzione di regressione: essa rappresenta unmodello di comportamento della media di Y come funzione diX

β e un vettore di parametri da cui dipende η(x ,β)

Regressione lineare semplice

Regressione lineare semplice

Nel modello di regressione lineare semplice abbiamo che

η(x ,β) = β0 + β1x , β = [β0, β1]′, β0, β1 ∈ R

Si assume inoltre che

Var(Y |X = x) = σ2 > 0 costante rispetto a x

L’ultima assunzione importante riguarda l’incorrelazione trale variabili casuali che generano le osservazionicampionarie di Y . Supponendo di disporre di un campione didimensione n,

Corr(Yi ,Yj) = 0 ∀i 6= j , i , j = 1, . . . , n

Regressione lineare semplice

Regressione lineare semplice

Le n variabili casuali campionarie Yi avranno medie diverse,dipendenti dal valore assunto da xi , e varianze uguali.

Saranno inoltre incorrelate.

Si veda la Figura 2: in ascissa si riportano i valori di X , in ordinataquelli di Y ; i cerchi hanno come coordinate le osservazioni xi e yi .Sul medesimo grafico si riportano la retta di regressione e ledistribuzioni condizionate Yi |X = xi

Regressione lineare semplice

Figura 2: Distribuzioni di probabilita Yi condizionate a X = xi

−3 −2 −1 0 1 2 3

−10

−5

05

1015

20

x

y

retta di regressioneosservazioni campionarie

ηη((x,, ββ))

Regressione lineare semplice

Il grafico in figura 2 ci dice una cosa molto importante.Compatibilmente con il modello che abbiamo costruito, lamodalita di Y che osserviamo in corrispondenza di una fissatamodalita di X e casuale.

Se avessimo estratto un campione diverso, avremmo osservatoqualcosa di diverso.

Tutte le conclusioni che possiamo trarre da cio che osserviamosono quindi determinate dal caso.

Dobbiamo essere consapevoli di agire in condizioni diincertezza e le nostre decisioni devono tener conto di questo.

Regressione lineare semplice

Regressione lineare semplice

Le assunzioni che abbiamo introdotto nei lucidi precedenti ciportano a definire sinteticamente un modello di questo tipo:

Yi = η(xi ,β) + εi

= β0 + β1xi + εi , i = 1, . . . , n

εi sono variabili casuali tali che:

E(εi ) = 0, Var(εi ) = σ2, ∀i

eCorr(εi , εj) = 0 ∀i 6= j .

Le determinazioni di εi sono dette disturbi aleatori

Regressione lineare semplice

Alcuni dati simulati

Il file simulati.txt contiene un campione di dimensione 5generato dal modello:

Yi = 5 + 3xi + εi , εi ∼ N(0, 100)

Salvato il file in una directory sulla quale operiamo con R,importiamo i dati nel dataframe con il comando:

> simulati = read.table("simulati.txt",header=T)

Possiamo visualizzare i dati sullo schermo digitando:

> simulati

La figura 3 mostra i dati e la retta di regressione. Pone inoltrein evidenza il ruolo di β0, β1 e εi .

Regressione lineare semplice

−1 0 1 2

−10

−5

05

1015

Yi == 5 ++ 3xi ++ εεi

x

y

ββ0

ββ1

ηη((x,, ββ)) == 5 ++ 3x

εε1

εε2εε5

εε4 εε3

Figura 3: I dati simulati e la retta di regressione

Regressione lineare semplice

Stima dei parametri

Nella realta non conosceremo mai i parametri del modello: β0,β1 e σ2.

Essi devono essere stimati sulla base dei dati campionari.

Regressione lineare semplice

Stima dei parametri

Una regola generale: fissato il campione, determiniamo lestime di β0 e di β1 minimizzando rispetto ai parametri lafunzione:

S(β0, β1) =n∑

i=1

(yi −β0−β1xi )2 metodo dei minimi quadrati

Dai corsi di base sappiamo che tali stime sono:

b0 = y − b1x e b1 =

∑ni=1(xi − x)yi∑ni=1(xi − x)2

Per i dati simulati, otteniamo le stime: b0 = 3.01 e b1 = 3.03

In Figura 4 sono rappresentati i dati, la funzione di regressionevera e quella stimata. Che deduzioni possiamo trarre?

Regressione lineare semplice

−1 0 1 2

−10

−5

05

1015

x

y

● punti osservatiretta di regressioneretta di regressione stimata

Figura 4: Dati simulati: funzione di regressione vera e funzione diregressione stimata

Regressione lineare semplice

Con il metodo dei minimi quadrati cerchiamo il valori di β1 e β2

che rendono minima

S(β0, β1) =n∑

i=1

(yi − β0 − β1xi )2

e abbiamo visto che quei valori sono b0 e b1, ovvero abbiamodefinito il vettore di stime b = [b0, b1]

Definiamo ora:

yi = η(xi ,b) = b0 + b1xi stima della funzione di regressionesull’unita statistica i-esima, corrispondente alla modalita xi .

ei = yi − yi residuo di regressione sull’unita statistica i-esima.

Regressione lineare semplice

I residui della regressione

I residui rappresentano quella parte di variabilita campionariadi Y che non e spiegata dal modello di regressione (torneremopiu avanti su questo punto).

Sono molto importanti, come vedremo in seguito.

Non vanno confusi con i disturbi aleatori, εi : i residui sonosempre calcolabili dopo aver ottenuto le stime dei coefficientidel modello; i disturbi non sono mai determinabili perche percalcolarli dovremmo conoscere β0 e β1.

Regressione lineare semplice

Un primo utilizzo dei residui: stima di σ2

La stima di σ2 e data da

s2 =1

n − 2

n∑i=1

e2i

Nel modello che abbiamo stimato con i dati simulati si ottienes2 = 59.34

Regressione lineare semplice

Il grafico in figura 5 riassume (quasi) tutto quello che abbiamodetto sulla regressione lineare semplice.

Regressione lineare semplice

−1 0 1 2

−10

−5

05

1015

x

y b0

b1

ηη((x,, b)) == 3.01 ++ 3.03x

e1

e2e5

e4 e3

Figura 5: Una sintesi grafica della stima di un modello di regressionelineare semplice

Regressione lineare semplice

Il modello in notazione matriciale

Premessa

Il modello di regressione lineare semplice che abbiamo introdotto inprecedenza come

Yi = β0 + β1xi + εi , i = 1, . . . , n

puo essere riscritto come segue:

Yi = [1, xi ]β + εi , i = 1, . . . , n

= x′iβ + εi , i = 1, . . . , n

conx′i = [1, xi ] e β = [β0, β1]

Regressione lineare semplice

Il modello in notazione matriciale

vettore delle n variabili casuali campionarie: Y = [Y1, . . . ,Yn]′

vettore delle n osservazioni campionarie sulla variabile Y :y = [y1, . . . , yn]

matrice di regressione:

X =

1 x1...

...1 xi...

...1 xn

=

x′1...x′i...x′n

Regressione lineare semplice

Il modello in notazione matriciale

Vettore dei disturbi aleatori: ε = [ε1, . . . , εi , . . . , εn]′ tale che

E(ε) = 0 e Σε = σ2In

Regressione lineare semplice

Il modello in forma matriciale

In forma matriciale, quindi il modello puo essere scritto come:

Y = Xβ + ε,

ovveroE(Y|X) = Xβ e ΣY|X = σ2In

Regressione lineare semplice

Le stime in forma matriciale

Per stimare β abbiamo minimizzato la funzione

S(β) =n∑

i=1

(yi − β0 − xiβ)2

la quale puo essere scritta in forma vettoriale come:

S(β) = (y − Xβ)′(y − Xβ)

Regressione lineare semplice

Le stime in forma matriciale

Sotto condizioni assai generali (che vedremo fra poco), il vettoreche minimizza S(β) e

b = (X′X)−1X′y ∈ R2.

Gli elementi che costituiscono i vettore b coincidono esattamentecon le stime che abbiamo definito in precedenza, cioe:

b = [b0, b1]′.

Regressione lineare semplice

Le stime in forma matriciale

Attenzione

b e calcolabile sotto due condizioni:

n ≥ 2: il numero di osservazioni campionarie deve essere noninferiore al numero dei coefficienti che vogliamo stimare.

Le colonne di X devono essere linearmente indipendenti.Questo significa che la variabile X non puo assumere lo stessovalore su tutte le unita statistiche osservate.

Regressione lineare semplice

Le stime in forma matriciale

Il vettore dei residui e definito come

e = [e1, . . . , ei , . . . , en]′

E facile verificare che

e = y − Xb

= y − X(X′X)−1X′y

= (In − X(X′X)−1X′)y

= My

con M = (In − X(X′X)−1X′)

Regressione lineare semplice

Le stime in forma matriciale

Come abbiamo gia visto, la stima della varianza e data da

s2 =1

n − 2

n∑i=1

e2i

ovvero

=1

n − 2e′e

Regressione lineare semplice

L’incertezza, che sciagura!

Ricapitoliamo:

b = (X′X)−1X′y stim di β

e = My residui

s2 =1

n − 2e′e stima di σ2

Tutte le stime dipendono da y (oltre che da X)

y e una particolare determinazione del vettore casuale Y

Se avessimo osservato un campione diverso le stime cheavremmo ottenuto sarebbero diverse.

La statistica non serve a niente!

Regressione lineare semplice

L’incertezza, che sciagura!

Abbiamo definito delle regole generali che ci permettono dicalcolare le stime b e s2 su qualsiasi campione osservato, sottocondizioni non particolarmente restrittive. Ma allora,

b e la determinazione campionaria di una particolare variabilecasuale bivariata:

B = (X′X)−1X′Y = [B0,B1]′

s2 e la determinazione campionaria di una particolare variabilecasuale:

S2 =1

n − 2E′E

Anche i residui sono determinazioni di n variabili casuali:

E = MY ∈ Rn

Regressione lineare semplice

E facile verificare che

E(B) = β e ΣB = σ2(X′X)−1

E(S2) = σ2 e Var(S2) =2σ4

n − 2

Poniamo H = (X′X)−1. Avremo quindi che

Var(Bi ) = σ2hi ,i , i = 0, 1

Nel modello di regressione lineare semplice, e facile verificare che

Var(B0) =σ2

n

(1 +

x2

var (x)

)e Var(B1) =

σ2∑ni=1(xi − x)2

Regressione lineare semplice

Possiamo stimare Var(B0) e Var(B1)?

Stime:

s2B0

=s2

n

(1 +

x2

var (x)

)e s2

B1=

s2∑ni=1(xi − x)2

Basta sostituire s2 a σ2 nelle espressioni delle rispettivevarianze.

Stimatori:

S2B0

=S2

n

(1 +

x2

var (x)

)e S2

B1=

S2∑ni=1(xi − x)2

Regressione lineare semplice

Generalmente siamo interessati (vedremo meglio in seguito) allostandard error degli stimatori:

SEB0 =√

Var(B0) e SEB1 =√

Var(B1)

stime degli standard error:

sB0 =√

s2B0

e sB1 =√

s2B1

stimatori degli standard error:

SB0 =√

S2B0

e SB1 =√

S2B1

Regressione lineare semplice

Correttezza

Gli stimatori dei parametri ignoti sono corretti: se potessimoripetere il campionamento all’infinito e a parita delle condizioni, lemedie delle stima ottenute coinciderebbero con i veri valori di β0,β1 e σ2

Regressione lineare semplice

Osservazione

Dalla correttezza dello stimatore B di β segue che

E(Ei ) = E (Yi )− E(x′iB)

= x′iβ − x′E(B)

= x′iβ − xiβ = 0 ∀i = 1, . . . , n

e quindiE(E) = 0.

Regressione lineare semplice

Efficienza

Tra tutti gli stimatori di β0 e β1, ottenibili come trasformazionilineari di Y e corretti, B0 e B1 sono i piu precisi, nel senso chehanno varianza minima.

Regressione lineare semplice

Definizione di consistenza

Uno stimatore, Tn, del parametro θ ∈ R, si dice consistente se

limn→∞

P(|Tn − θ| > ε) = 0 ∀ε > 0

Quando la dimensione del campione e molto grande, gliscostamenti tra stime e vero valore del parametro tendono adivenire molto piccole.

Regressione lineare semplice

B0, B1 e S2, sono stimatori consistenti per β0, β1 e σ2 sesussistono tutte le condizioni che caratterizzano il modello diregressione lineare semplice e se

limn→∞

1

nX′X = C matrice definita positiva

Regressione lineare semplice

Ma come stimiamo i parametri con R?

Abbiamo gia importato il dataframe simulati dal filesimulati.txt

Per semplificarci la vita diamo il comando

> attach(simulati)

costruiamo ora un nuovo oggetto con il seguente comando:

> simulati.lm = lm(y~x)

Se non avessimo utilizzato il comando attach(simulati),avremmo dovuto scrivere

> simulati.lm = lm(y~x, data=simulati)

per far capire a R in quale dataframe dovesse cercare levariabili y e x

Regressione lineare semplice

Ma come stimiamo i parametri con R?

La funzione lm (= linear model) costruisce un oggetto diclasse lm, nel nostro caso simulati.lm, che contiene tutte leinformazioni che ci servono sul modello stimato.

Una sintesi importante di tale informazione si puo ottenerecon il comando seguente:

> summary(simulati.lm)

che fornisce il seguente output

Regressione lineare semplice

> summary(simulati.lm)

Call:lm(formula = y ~ x, data = simulati)

Residuals:1 2 3 4 5

-8.065 5.823 -6.270 5.587 2.925

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

(Intercept) 3.014 3.445 0.875 0.446x 3.027 2.678 1.130 0.341

Residual standard error: 7.703 on 3 degrees of freedomMultiple R-Squared: 0.2986, Adjusted R-squared: 0.06482F-statistic: 1.277 on 1 and 3 DF, p-value: 0.3406

Regressione lineare semplice

Per il momento non siamo in grado di capire tutto quello che cidice questo output, ma vediamo alcuni primi dettagli:

La prima riga rievoca il comando con cui si e chiamata lafunzione lm

Segue l’elenco dei residui (questo avviene solo quando si ha uncampione piccolo, nel nostro cason = 5)

La tabella che sta sotto la scritta Coefficients: e moltoimportante. Gli elementi sulla colonna Estimate sono lestime dei coefficienti di regressione (a sinistra si vedono leindicazioni corrispondenti all’intercetta e alla variabile X ).

Regressione lineare semplice

Gli elementi sulla colonna Std. Error sono le stime deglistandard error degli stimatori dei coefficienti di regressione.

Nella terza riga dal basso si leggeResidual standard error: 7.703 on 3 degrees offreedomSi tratta della radice quadrata della stima della varianza deidisturbi (

√s2); il numero di gradi di liberta (degrees of

freedom) e pari a

n − numero di coefficienti di regressione stimati

nel caso del nostro esempio, 5− 2 = 3.

Il resto lo vedremo in seguito

Regressione lineare semplice

Alcune funzioni applicabili ad un oggetto di classe lm

A titolo di esempio utilizziamo l’oggetto simulati.lm

> coef(simulati.lm) fornisce il vettore delle stime deicoefficienti di regressione (b).

> fitted(simulati.lm) fornisce il vettore delle stime dellafunzione di regressione sulle n unita statistiche (y)

> resid(simulati.lm) fornisce il vettore dei residui (e)

Regressione lineare semplice

Alcuni grafici utili

Disegnamo il grafico di Y , facendo in modo, con l’argomentoylim, che le ordinate siano comprese tra il piu piccolo ed ilpiu grande tra gli elementi dei vettori y e y; con l’argomentomain definiamo un titolo per il grafico

> plot(y,ylim=range(c(y,fitted(simulati.lm))),main="Variabile risposta e valori stimati")

Aggiungiamo ora, in rosso, i punti corrispondenti ai valoristimati della funzione di regressione

> points(fitted(simulati.lm),col="red")

La funzione points aggiunge dei punti ad un graficopreesistente.

Regressione lineare semplice

Avremmo potuto dare dei comandi un po’ diversi, per esempio:

> plot(y,ylim=range(c(y,fitted(simulati.lm))),main="Variabile risposta e valori stimati")

> lines(fitted(simulati.lm),col="red")

oppure

> plot(y,ylim=range(c(y,fitted(simulati.lm))),type="l",main="Variabile risposta e valori stimati")

> points(fitted(simulati.lm),col="red")

Regressione lineare semplice

Un altro grafico utile e il seguente:

> plot(x,y,main="Dati osservati e retta di regressione stimata")

> lines(x,fitted(simulati.lm))

Visualizza quanto la retta di regressione stimata sia in grado diinterpolare i dati osservati

Regressione lineare semplice

Varianza spiegata

Domanda

Perche utilizzare un modello di regressione quando potremmoapprossimare i valori yi con la loro media campionaria, y (Figura6)?

Regressione lineare semplice

−1 0 1 2

−10

−50

510

x

y

y

ηη((x,, b))

Figura 6: Diagramma di dispersione di Y contro X , retta di regressionestimata e media campionaria di Y

Regressione lineare semplice

Varianza spiegata

Un modo comune di valutare la variabilita campionaria di Yconsiste nel calcolare

var(Y ) =1

n

n∑i=1

(yi − y)2

Il numeratore della frazione che definisce var(Y ) si dice devianzatotale di Y :

DEVTOT =n∑

i=1

(yi − y)2

Regressione lineare semplice

Varianza spiegata

Se nel modello di regressione compare l’intercetta, e facileverificare che

ˆy =1

n

n∑i=1

yi = y e e =1

n

n∑i=1

ei = 0

Ne segue che le varianze campionarie dei valori stimati dellaregressione e dei residui sono date da:

var(Y ) =1

n

n∑i=1

(yi − y)2 var(E ) =1

n

n∑i=1

e2i

Regressione lineare semplice

Varianza spiegata

Possiamo quindi definire

DEVREG =n∑

i=1

(yi − y)2 devianza di regressione

e

DEVRES =n∑

i=1

e2i devianza residua

Regressione lineare semplice

Varianza spiegata

Si puo dimostrare che

var(Y ) = var(Y ) + var(E ),

ovveroDEVTOT = DEVREG + DEVRES

Regressione lineare semplice

Varianza spiegata

Domanda

Supponiamo di approssimare yi , i = 1 con yi , i = 1, . . . , n.Quanta parte della variabilita di Y cogliere attraverso il modello diregressione?

Risposta

R2 =DEVREG

DEVTOTCoefficiente di determinazione lineare

= 1− DEVRES

DEVTOT

Regressione lineare semplice

Varianza spiegata

Una proprieta importante

0 ≤ R2 ≤ 1

Se R2 = 1, allora yi = yi , i = 1, . . . , n: le osservazioni su Y esu X giacciono su una retta

Se R2 = 0, allora yi = y , i = 1, . . . , n: la retta (funzione diX ) che meglio approssima le osservazioni su Y e costante(indipendente da X ) con ordinata uguale a y

Regressione lineare semplice

Varianza spiegata

Quanto piu R2 e vicino a 1, tanto meglio i valori yi sonoapprossimati da yi .

Quanto piu R2 e vicino a 0, tanto peggio i valori yi sonoapprossimati da yi .

Si puo dimostrare che

corr (X ,Y ) = segno(b1)∣∣∣√R2

∣∣∣

Regressione lineare semplice

Come determiniamo R2 con R?

Nel nostro esempio, troviamo il valore di R2 nell’output di

> summary(simulati.lm)

in corrispondenza di

Multiple R-Squared: 0.2986

Nel nostro esempio abbiamo quindi che R2 = 0.2986

Regressione lineare semplice

Che delusione!

In termini di varianza spiegata, i risultati della nostra primaapplicazione sembrano deludenti, ma...

La varianza dei disturbi, εi , nell’esempio simulato era assaielevata.

Abbiamo stimato i parametri con soli 5 dati. Con uncampione piu numeroso avremmo potuto fare molto meglio.

Regressione lineare semplice

Il modello gaussiano

Ricordiamo la formula generale del modello:

Yi = x′iβ + εi , i = 1, . . . , n

Il modello si dice gaussiano se εi ∼ N(0, σ2), ferme restandotutte le altre assunzioni.La Gaussianita del modello implica che

Yi |X = xi ∼ N(x′iβ, σ2)

Condizionatamente a X = xi , Yi si distribuisce come una v.c.normale con media x′iβ e varianza σ2

Regressione lineare semplice

Il modello gaussiano

Conseguenze dell’ipotesi di gaussianita:

Distribuzione di B0, B1 e Yi :

B0 ∼ N

(β0,

σ2

n

(1 +

x2

var (x)

))B1 ∼ N

(β1,

σ2∑ni=1(xi − x)2

)Yi ∼ N

(β0 + β1xi , σ

2

(1

n+

(xi − x)2∑ni=1(xi − x)2

))

Regressione lineare semplice

Tre variabili casuali importanti:

B0 − β0

SB0

∼ tn−2 (1)

B1 − β1

SB1

∼ tn−2 (2)

Yi − β0 − β1xi

S

√1

n+

(xi − x)2∑ni=1(xi − x)2

∼ tn−2 (3)

si distribuiscono come t di Student con n − 2 gradi di liberta

Regressione lineare semplice

Una breve digressione

Una variabile casuale distribuita come una t di Student con n gradidi liberta ha una funzione di densita rappresentata in 7:

La funzione di densita e simmetrica intorno allo 0

Quando n →∞ essa tende alla funzione di densita di unanormale con media 0 e varianza 1.

Regressione lineare semplice

Una breve digressione

x

f(t)

0

0

Figura 7: Funzione di densita di probabilita di una v.c. tn

Regressione lineare semplice

Quantili di una v.c. T ∼ tn

Quantile di ordine α di una variabile casuale

Fissato un numero α tale che 0 < α < 1, diremo che qα e ilquantile di ordine α della variabile casuale Y se

P(Y ≤ qα) = α

Regressione lineare semplice

Quantili di una v.c. T ∼ tn

Il quantile di ordine α di una t di student con n gradi di libertasara indicato nel seguito con il simbolo: tn,α

E facile verificare che tn,α = −tn,1−α

Supponiamo di voler trovare un intervallo,I1−α, simmetricointorno allo 0 tale che P(T ∈ I1−α) = 1− α. Tale intervallosara dato da

I1−α = [−tn,1−α/2, tn,1−α/2]

si veda la Figura 8

Regressione lineare semplice

x

f(t)

−− tn,, 1−−αα 2 0 tn,, 1−−αα 2

0

αα 2 αα 2

1 −− αα

Figura 8: Quantili di una t di student con n gradi di liberta

Regressione lineare semplice

Intervalli di confidenza

Supponiamo di essere interessati ad un parametro, θ ∈ R.

Sulla base dei dati campionari possiamo ottenere una stimapuntuale di θ, diciamo t.

Tenendo conto dello stato di incertezza in cui dobbiamooperare, vogliamo definire un intervallo di valori plausibili perθ.

Regressione lineare semplice

Intervalli di confidenza

Fissato un numero α, 0 < α < 1, supponiamo di potercostruire un intervallo avente per estremi due variabili casuali,

I1−α = [A1−α(Y),B1−α(Y)]

tale che P(A1−α(Y) ≤ θ ≤ B1−α(Y)) = 1− α.

Se potessimo estrarre infiniti campioni di fissata dimensione,n, su ciascuno di essi potremmo calcolare una particolaredeterminazione dell’intervallo aleatorio:

[a1−α(y), b1−α(y)]

una frazione 1− α di questi intervalli conterrebbe il verovalore del parametro.

Regressione lineare semplice

Intervalli di confidenza

Sul campione osservato y possiamo quindi costruire unparticolare intervallo, come quello indicato nel puntoprecedente, che e chiamato un intervallo di confidenza per θ allivello di fiducia 1− α.

Regressione lineare semplice

Intervallo di confidenza per βi , i = 0, 1 al livello di fiducia1− α

Quantita pivotale (v.c. la cui distribuzione di probabilita enota e non dipende dai parametri ignoti)

T =Bi − βi

SBi

∼ tn−2

Regressione lineare semplice

Intervallo di confidenza per βi , i = 0, 1 al livello di fiducia1− α

Determinazione degli intervalli aleatori Ii ,1−α

1− α = P

(−tn−2,1−α/2 ≤

Bi − βi

SBi

≤ tn−2,1−α2

)esplicitando rispetto a βi

= P(Bi − SBitn−2,1−α/2 ≤ βi ≤ Bi + SBi

tn−2,1−α/2)

Quindi gli intervalli aleatori Ii ,1−α sono dati da

Ii ,1−α = [Bi − SBitn−2,1−α/2,Bi + SBi

tn−2,1−α/2]

Regressione lineare semplice

Intervallo di confidenza per βi , i = 0, 1 al livello di fiducia1− α

Determinazione degli intervalli di confidenza sul campioneosservato:

[bi − sBitn−2,1−α/2, bi + sBi

tn−2,1−α/2]

Nel caso dell’esempio sui dati simulati, fissando un livello difiducia 1− α = 0.95, abbiamo:

intervallo di confidenza per β0: [−7.950, 13.977]intervallo di confidenza per β1: [−5.496, 11.549]

Regressione lineare semplice

Alcune considerazioni importanti

I risultati numerici che abbiamo ottenuto meritano qualchecommento:

Affermare che la probabilita che β0 sia compreso tra -7.95 e13.98 sia pari a 0.95 non ha alcun senso.E l’intervallo aleatorio (puramente teorico) I0.95 a contenere ilvero valore β0 con probabilita 0.95, non l’intervallo osservatosul campione.

L’intervallo di confidenza che abbiamo costruito e moltoampio. Questo significa che la nostra incertezza sul parametroe notevole.

Considerazioni del tutto analoghe valgono per l’intervallo diconfidenza per β1.

Regressione lineare semplice

Altri dati simulati

Importamo ora, nel dataframe simulati1, i dati contenuti nelfile simulati1.txt

Questi dati sono simulati dallo stesso modello dei precedenti,ma ora la dimesione campionaria e n = 100.

Ripetiamo l’analisi precedente con i seguenti comandi:

> simulati1 = read.table("simulati1.txt",header=T)> attach(simulati1)> simulati1.lm = lm(y~x)> summary(simulati1.lm)

ottenendo un output simile a quello mostrato nella diapositivaseguente.

Regressione lineare semplice

> summary(simulati1.lm)

Call:lm(formula = y ~ x)

Residuals:Min 1Q Median 3Q Max

-26.6184 -7.0684 -0.3749 6.0160 24.7992

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

(Intercept) 6.6413 0.9923 6.693 1.37e-09x 2.7205 0.5603 4.856 4.54e-06---

Residual standard error: 9.922 on 98 degrees of freedomMultiple R-Squared: 0.1939, Adjusted R-squared: 0.1857F-statistic: 23.58 on 1 and 98 DF, p-value: 4.543e-06

Regressione lineare semplice

Quali sono ora le stime dei parametri β0, β1 e σ2?

Quanto vale R2 e perche continua ad avere un valore basso?

Ad un livello di fiducia 1− α = 0.95, gli intervalli diconfidenza ora sono:

per β0: [4.672, 8.6105]per β1: [0.937, 4.505]

Perche?

Regressione lineare semplice

Intervallo di confidenza per η(x0, β)

Sia x0 un fissato valore della variabile X .

Vogliamo costruire un intervallo di confidenza, di livello 1− αper

η(x0,β) = β0 + β1x0 = x′0β

con x′0 = [1, x0]

Se il modello e gaussiano, allora

η(x0,B) ∼ N(x′0β, σ2x′0(X′X)−1x0

e la quantita pivotale sara data da:

η(x0,B)− η(x0,β)√S2x′0(X

′X)−1x0

∼ tn−2

Regressione lineare semplice

Intervallo di confidenza per η(x0, β)

Ponendo

Sη(x0,B) = S√

x′0(X′X)−1x0

Ad un livello di fiducia 1− α, quindi, l’intervallo di cofidenzaper η(x0,β) sara il seguente:[

η(x0,b)− tn−2,1−α/2Sη(x0,B), η(x0,b) + tn−2,1−α/2Sη(x0,B)

]

Regressione lineare semplice

Come si fa con R?

Continuiamo con l’esempio sui dati simulati1: abbiamo giastimato il modello e salvato i risultati nell’oggettesimulati1.lm

Supponiamo di volere determinare un intervallo di confidenzaper la funzione di regressione calcolata in X = 0.5 e in X = 1

Costruiamo un nuovo dataframe in cui l’unica variabile checompare deve avere lo stesso nome del regressore che e statoutilizzato per costruire l’oggetto simulati1.lm:

> nuovidati=data.frame(x=c(0.5,1))

Regressione lineare semplice

Ecco come deve comparire a video il nuovo oggetto creato:

> nuovidatix

1 0.52 1.0

Ora costruiamo un oggetto, int.regr, entro il qualepossiamo individuare i due intervalli di confidenza cheintendiamo calcolare:

int.regr=predict(simulati1.lm,nuovidati,interval="confidence",level=0.95)

Regressione lineare semplice

L’oggetto int.regr deve apparire cosı:

> int.regrfit lwr upr

1 8.001518 5.961486 10.041552 9.361745 7.111376 11.61211

La prima riga corrisponde al primo elemento del dataframenuovidati; la seconda riga corrisponde al secondo elemento dinuovidati (X = 0.5 e X = 1).sulla prima colonna, fit, leggiamo i valori delle stime puntualidella funzione di regressione corrispondenti a X = 0.5 e aX = 1.Sulla seconda e la terza colonna leggiamo rispettivamente gliestremi inferiore e superiore degli intervalli di confidenza perη(0.5,β) e η(1,β)

Regressione lineare semplice

La funzione predict()

Per acquisire informazioni sull’applicazione della funzionepredict() ad un oggetto di classe lm, digitare

> help(predict.lm)

il primo argomento della funzione deve essere un oggetto diclasse lm (nel nostro caso, simulati1.lm)il secondo argomento deve essere il nome del dataframe in cuidevono comparire le modalita del regressore (nel nostro caso,nuovidati)il terzo argomento, interval, deve indicare il tipo di intervalloche si vuole costruire (nel nostro caso interval=”confidence”significa che vogliamo costruire un intervallo di confidenza)il quarto argomento, level, rappresenta il livello di confidenza(nel nostro caso, level = 0.95)

Regressione lineare semplice

Intervallo di previsione per Y in corrispondenza di X = x0

Vogliamo prevedere il valore assunto da Y in corrispondenzadi un fissato valore di X , diciamo x0, misurato su una unitastatistica non inclusa nel campione e sulla quale Y non e statorilevato.

Vogliamo costruire un intervallo di previsione, di livello 1− αper

Y0 = β0 + β1x0 + ε0 = x′0β + ε0

con x′0 = [1, x0]

Se il modello e gaussiano, allora

Y0|x0 ∼ N(x′0β, σ2

Se prevediamo Y0 con Y0 = x′0B, l’errore di previsione sara

Y0 − x′0B ∼ N(0, σ2(1 + x′0(X

′X)−1x0

)

Regressione lineare semplice

Intervallo di previsione per Y in corrispondenza di X = x0

La quantita pivotale per l’intervallo di previsione al livello difiducia 1− α sara data da:

Y0 − x′0B√S2 (1 + x′0(X

′X)−1x0)∼ tn−2

Ponendo

SY0 = S√

1 + x′0(X′X)−1x0

Ad un livello di fiducia 1− α, quindi, l’intervallo di previsioneper Y0 sara il seguente:[

η(x0,b)− tn−2,1−α/2SY0 , η(x0,b) + tn−2,1−α/2SY0

]

Regressione lineare semplice

Come si fa con R?

Continuiamo con l’esempio sui dati simulati1.

Supponiamo di volere determinare due intervalli di previsioneper Y in corrispondenza di X = 0.5 e in X = 1 ad un livello diconfidenza pari a 0.95

Utilizziamo il dataframe nuovidati gia introdotto inprecedenza

Regressione lineare semplice

Ora costruiamo un oggetto, int.prev, entro il qualepossiamo individuare i due intervalli di previsione cheintendiamo calcolare:

int.prev=predict(simulati1.lm,nuovidati,interval="prediction",level=0.95)

Regressione lineare semplice

L’oggetto int.prev deve apparire cosı:

> int.prevfit lwr upr

1 8.001518 -11.79375 27.796782 9.361745 -10.45630 29.17979

La prima riga corrisponde al primo elemento del dataframenuovidati; la seconda riga corrisponde al secondo elemento dinuovidati (X = 0.5 e X = 1).sulla prima colonna, fit, leggiamo i valori delle previsionipuntuali di Y in corrispondenza di X = 0.5 e a X = 1.Sulla seconda e la terza colonna leggiamo rispettivamente gliestremi inferiore e superiore degli intervalli di confidenza per Yin corrispondenza di X = 0.5 e a X = 1.

Regressione lineare semplice

La funzione predict()

Per acquisire informazioni sull’applicazione della funzionepredict() ad un oggetto di classe lm, digitare

> help(predict.lm)

il primo argomento della funzione deve essere un oggetto diclasse lm (nel nostro caso simulati1.lm)il secondo argomento deve essere il nome del dataframe in cuidevono comparire le modalita del regressore (nel nostro casonuovidati)il terzo argomento, interval, deve indicare il tipo di intervalloche si vuole costruire (nel nostro caso interval=”prediction”significa che vogliamo costruire un intervallo di previsione)il quarto argomento, level rappresenta il livello di confidenza(nel nostro caso level = 0.95)

Regressione lineare semplice

Nella Figura 9 sono rappresentati:

i dati osservati

la vera retta di regressione (rosso)

gli intervalli di confidenza per la media (rosso) e di previsione(blu) in corrispondenza di tutti i valori osservati di X al livellodi fiducia 0.95

Regressione lineare semplice

●●

● ●

●●●

●●

●●

●●

●●

●●

−2 0 2 4

−20

−10

010

2030

40

x

y

Figura 9: Intervalli di confidenza per η(x ,β) e di previsione per Y allivello di fiducia 0.95