Under model M0 kan estimation foretages for hver af
de r multinomialmodeller
under brug af resultatet i
underafsnit 3.1.1. Dette giver
M0:π^ij=niAij,j=1,…,k,i=1,…,r.
Under model M1 skal det fælles sæt sandsynligheder
(π1,…,πk) estimeres. Opstiller man likelihoodfunktionen,
kan man indse, at estimaterne opnås ved at bruge
(A∙1,A∙2,…,A∙k)∼multinom(n∙,(π1,…,πk)),
hvor A∙j=A1j+A2j+⋯+Arj er den
j'te søjlesum og
n∙=n1+n2+⋯+nr. Igen kan vi bruge
resultatet i
underafsnit 3.1.1
og får
M1:π^j=n∙A∙j,j=1,…,k.
Vi kan nu beregne de forventede under model M1. Idet
eij er det forventede antal i kasse j for population
i, er denne
eij=niπ^j=n∙niA∙j,j=1,…,k,i=1,…,r.
Denne formel kan læses som "rækkesum gange søjlesum divideret med
den totale sum".
3.7.1 Test
For at lave et test for reduktion fra model M0 til model M1
bruges igen likelihood ratio teststørrelsen på
formen G=−2log(Q), hvor Q er forholdet mellem maksimum
af likelihoodfuktionen under de to modeller:
I ord kan vi sige dette, som at G er 2 gange sum over celler af det
observerede antal ganget med logaritmen til det observerede antal
divideret med det forventede antal. Med celler mener vi indgangene
i r×k matricen med antallene Aij.
Resultat 3.7.1.
(Homogenitetstest)
Betragt modellerne M0 og M1 som beskrevet i dette afsnit. Hvis alle de
forventede er større end eller lig med 5, eij≥5, kan vi
approksimativt beregne p-værdien for test af reduktion fra
model M0 til model M1 baseret på den observerede værdi
Gobs af teststørrelsen G ved
p-værdi=P(G≥Gobs)=1−χcdf2(Gobs,(r−1)(k−1)).
Antallet af frihedsgrader følger den generelle regel med antallet
af frie parametre i M0 minus antallet af frie parametre i M1:
Nedenstående kode viser eksplicit beregningen af de forventede antal.
I eksempel 3.7.2 nedenfor er vist en kortere
version a koden, og det er denne I skal bruge i forbindelse med opgaverne.
I kodevinduet er Obs en 3×2
matriks med følgende data:
123Sum110102040210302060Sum204040100
Kør koden, og forklar,
hvad de forskellige dele af output indeholder.
Funktionen rowSums beregner rækkesummer, og giver derfor
en vektor af længde 3.
Funktionen colSums beregner søjlesummer, og giver derfor
en vektor af længde 2.
Funktionen outer tager to vektorer som input og danner en
matriks, hvor den (i,j)'te indgang er den i'te indgang i den
første vektor ganget med den j'te indgang i den anden vektor,
hvorfor ex bliver matricen med de forventede antal.
Endelig indeholder G og pval henholdsvis G-teststørrelsen
og den tilhørende p-værdi. Koden i linjerne 5-8 kan skrives samlet som
ex=outer(rowSums(obs),colSums(obs))/sum(obs).
Eksempel 3.7.2.
(Tillægge robotter menneskelignende egenskaber)
Vi fortsætter med data omkring antropomorfe indlæg på tre
diskussionsfora fra Eksempel 3.6.1.Først opstilles en statistisk model for data.
Lad Indlaegij,i=iP,Ro,Ai (iPad, Roomba, Aibo), j=ja,nej
(indeholder antropomorft indhold: ja, nej),
være den stokastiske variabel, der angiver antal
indlæg med indhold givet ved j og med forum givet
ved i. Vi benytter modellen
Først findes de forventede antal under hypotesen
som rækkesum gange søjlesum divideret med det totale antal.
Dette giver følgende tabel (afrundet til en decimal).
Da alle de forventede er større end fem (den mindste er 75.8),
bruges χ2-approksimationen til fordelingen af G, og vi får
p-værdi=1−χcdf2(381.2,(3−1)(2−1))=1.7⋅10−83.
Denne p-værdi er meget lille, hvorfor data strider mod hypotesen
om samme frekvens af antropomorfe indlæg på de tre fora.
Kigger vi på data, kan vi også se, at der er en
høj frekvens af antropomorfe indlæg på Aibo-forummet, men en lav
frekvens på iPad-forummet. Roomba-forummet ligger mellem
de to andre fora, men nok tættere på iPad-forum end på
Aibo-forum, hvilket ikke var forventet af forfatterne til artiklen.
Beregningerne er lavet i R som vist nedenfor.