Afsnit 8.7: Det generelle F-test
I eksemplet omkring fremføring af medicin i kroppen
i foregående afsnit vurderede vi, at der ikke så ud til at være
interaktion mellem
prodrug og
tid.
Vi lavede ikke et formelt test, eftersom hypotesen om
additivitet svarer til at sætte fire parametre lig med nul,
og dermed ikke kan aflæses fra parametertabellen.
Generelt i den tosidede variansanalysemodel, her betegnet med
M1, fjernes
d(M1)−d(M2)=km−(k+m−1)=(k−1)(m−1) parametre, når vi
reducerer til den addititve model, her betegnet med
M2,
hvor
k og
m er antallet af niveauer i de to faktorer.
Hvordan laver vi et test for denne reduktion
? Ligesom i den ensidede
variansanalysemodel skal varians "mellem grupper" sammenlignes
med varians "inden for grupper". Jeg beskriver nu testet i en meget
generel ramme.
En generel lineær normal model er på formen:
M:Xi∼N(ξi,σ2),i=1,…,n,(ξ1,…,ξn)∈L(M),
hvor
L(M) er et lineært underrum af
Rn. Det sidste
betyder blot, at der findes et
k og faste vektorer
v1,…,vk,
vj=(vj1,…,vjn), således at vektoren
af middelværdier kan skrives på formen
(ξ1,…,ξn)=θ1v1+θ2v2+⋯+θkvk,(8.7.1)
hvor
(θ1,…,θk) er ukendte parametre,
som vi ønsker at estimere ud fra data. Dette kan virke noget
abstrakt, men tænk på følgende to eksempler. For
to grupper af observationer med hver sin
middelværdi, hvor gruppe 1 kommer først,
kan vi skrive
(ξ1,…,ξn)=μ1(1,1,…,1,0,0,…,0)+μ2(0,0,…,0,1,1,…,1),
eller for den simple regressionsmodel, kan
vi skrive
(ξ1,…,ξn)=α(1,1,…,1)+β(t1,t2,…,tn).
I det generelle
F-test ønsker vi at teste reduktionen
fra en model
M1 til en undermodel
M2, hvor
L(M2) er et
underrum af
L(M1). I praksis betyder det sidste typisk, at
man tester en hypotese om, at nogle angivne parametre er nul.
Resultat 8.7.1.
(Det generelle
F-test)
Betragt to modeller
M1 og
M2, hvor
M2 er en undermodel af
M1.
Lad
ξ^i(M1) og
ξ^i(M2),
i=1,…,n, være de forventede
værdier i de to modeller, så er
F-teststørrelsen for reduktion fra
model
M1 til model
M2 på formen
F=s2(M1)s2(M1,M2)=s2(M1)∑i(ξ^i(M1)−ξ^i(M2))2/(d(M1)−d(M2))=s2(M1)(SSD(M2)−SSD(M1))/(df(M2)−df(M1)).
Under model
M2 beregnes
p-værdien for testet som
p-værdi=1−Fcdf(F,df(M2)−df(M1),df(M1)).
Testet beregnes i
python ved kommandoen
anova_lm(lmUD2,lmUD1),
hvor
lmUD1 og
lmUD2 er output
fra
ols i
python for de to modeller
M1 og
M2.
Output fra kaldet af
anova\textunderscore lm
er en
testtabel med to rækker og seks søjler:
01df_resid−−ssr−−df_diff−ss_dif−F−Pr(>F)−
Første række vedrører model
M2 og anden række model
M1.
Søjlen
ssr indeholder
SSD(M) for de to modeller, og
df_resid de tilhørende frihedsgrader.
Indholdet i anden række i
søjlen
df_diff er differensen
mellem de to værdier under
df_resid,
og
ss_dif er differensen
mellem de to værdier under
ssr.
De to sidste søjler indeholder selve
F-teststørrelsen og den
tilhørende
p-værdi i anden række.
Måske har I bemærket, at i output fra
summaryLM i
python
står der i sidste linje "F-statistics".
Dette er
F-teststørrelsen, hvor modellen fra kaldet af
estimationsfunktionen sammenlignes med modellen
med konstant middelværdi, svarende til modelformlen
respons∼1.
Selvom slutmodellen i dette test altid er den samme,
vil
p-værdien afhænge af startmodellen
givet gennem kaldet til estimationsfunktionen.
I kan se dette konkret i output fra det skjulte kodevindue i
eksempel
8.6.1.
Eksempel 8.7.2.
(Fremføring af medicin)
I kodevinduet nedenfor vises beregningen af
F-test for reduktion fra
den tosidede variansanalysemodel til den additive model. Derudover
vises de to
F-test for henholdsvis ingen effekt af prodrug og
ingen effekt af tid.
8.7.3 Test for additive undermodel
ForegåendeNæste