Simulerade konfidensintervall
Frivillig bonusgivande uppgift i matenatisk statistik.
------------------------------------------------------------
Tillgodoräknande
En väl genomförd och redovisad laboration ger 2 bonuspoäng på
statistikdelen vid
den ordinarie tentan
förutsatt att den lämnas in enligt anvisningar.
Två personer kan samarbeta men båda måste vara aktiva och
beredda att svara på någon
fråga som kontrollerar förståelsen och egen aktivitet.
Del 1: Konfidensintervall för väntevärdet vid normalfördelning.
Låt X_1, ... ,X_n vara oberoende N(mu,sigma).
Ett konfidensintervall för mu baseras på att uttrycket
(Xmedel-mu)/(s/rot(n))
har en känd fördelning. Ange vilken!
Fortsätt fram till färdiga uttryck för det 95%-iga
konfidensintervallets vänstra och högra
gränser.
Låt n=7 vara stickprovsstorleken och finn tabellgränser i denna
fördelning som ger ett 95% konfidensintervall.
Ange tabellvärden och hur du fått dem
(speciellt viktigt om du råkar göra fel!)
Välj värden på mu och sigma, inte 0 och 1.
Simulera 200 stickprov av storleken n=7 på N(mu,sigma)
(som en matris X av storleken (n,200) och beräkna medelvärde
och standardavvikelse för dessa med kommandona m=mean(X) och s=std(X).
Beräkna de undre (vänstra) intervallgränserna, V,
och de övre gränserna H (som radvektorer av längden 200) Försök att änvända kommandot prctile.
För uppritningen definierar vi
>> num=1:200;
och ritar intervallen med kommandot
>> plot([num;num],[V;H])
(där V och H skall vara radvektorer).
Du skall nu se 200 konfidensintervall uppritade.
Kontrollera hur många av dessa som täcker det sanna mu-värdet.
Om det är jobbigt att hitta dessa i grafen så skriv
>> mu= ...; Vfel=sum(V>mu), Hfel=sum(H<mu),
så anges hur många som missar i intervallets undre gräns resp.
intervallets övre gräns. Resten är korrekta.
Besvara frågorna:
Hur många intervall täckte över parametern?
Vilken sannolikhetsfördelning har detta antal?
Är det rimlig överensstämmelse
mellan ditt resultat och vad det borde bli?
Del 2: Intervallets känslighet för
datas fördelning.
Med ett begränsat datamaterial kan man inte observera om data
verkligen följer en viss fördelning och i många fall är det heller
inte givet av själva situationen där man samlar data. Ofta chansar man
och ansätter normalfördelning som modell. Denna del av laben går ut på
att med simulering studera hur konfidensintervall för mu fungerar
när sådana chansningar är fel. t-fördelningsintervallet utgår från
medelvärdet av data och eftersom centrala gränsvärdessatsen verkar på
medelvärdet så kan vi gissa att konfidensintervallet blir rätt
okänsligt för fördelningen när datamaterialen blir stora. Det är
därför mest intressant att studera små datamaterial. Om
fördelningen för data är osymmetrisk så blir felriskerna troligen
olika i de båda
kanterna och det är då intressant att redovisa dem var för sig.
Som exempel på felaktiga fördelningar studerar vi
a) rektangulärfördelningen (som är symmetrisk med korta svansar),
b) exponentialfördelningen (som är tydligt
osymmetrisk med en lång svans
åt höger),
c) en tredje fördelning (diskret eller kontinuerlig) som du väljer
själv. Använd gärna en unik fördelning som du simulerat i
bonusuppgift 1.
Som stickprovsstorlekar studerar vi n=3, n=7 och n=15.
För var och en av fördelningarna a, b, c, simuleras ett stort antal
stickprov med n observationer vardera. Gör detta för n=3, 7, 15.
Enklast simulerar man t.ex. 10000 stickprov genom att generera en
matris med (n,10000) element med den aktuella fördelningen. Skriv
t.ex. x=4+6*rand(3,10000); mx=mean(x); s=std(x); så har du medelvärden
och standardavvikelser för 10000 stickprov av storleken 3 på U(4,10).
Metoder att simulera exponentialfördelning och vissa andra
fördelningar behandlades delvis i bonusuppgift 1
och finns beskrivna i kursboken sid. 61 och 91-92.
Antag nu att vi tror att data är normalfördelade och därför bildar
samma uttryck som ovan men med frihetsgrader anpassade till
stickprovens storlek. Skaffa dig tabellvärden ur tabell eller med
anrop i matlab där norminv, chi2inv, tinv, gaminv etc. med lämpliga
argument ger sådana värden om den statistiska toolboxen är tillgänglig.
Finn sedan vänster (V) och höger (H)
konfidensgränser för mu vid konfidensgraden 0.95. Dessa
intervallgränser blir vektorer av längden 10000. Ta reda på sanna
mu i den fördelning som simuleras och kontrollera hur stor andel av
de beräknade konfidensintervallen som täcker sanna mu.
Matlabknep: Satsen C=(V<my).*(H>my); ger en vektor med ettor för alla
intervall som täcker parametern; mean(C) ger andelen. Vid osymmetrisk
fördelning är det dessutomm intressant att beräkna Vfel=sum(V>my) och
Hfel=sum(H<my) för att jämföra felrisken i respektive kant.
Gör en tabell där man för varje fördelning ser hur resultatet beror på n.
Ange alla resultat som sannolikheter med 3 decimaler.
Redovisa också vilken fördelning du valt själv.
Kommentera också ditt intryck av när man kan använda
t-fördelningsintervallet och om det ger lägre eller högre
träffsannolikhet än den avsedda. Själv anser jag att om den sanna
konfidensgraden ligger mellan 0.94 och 0.96 vid en planerad
konfidensgrad 0.95 så är det helt godtagbart likaså kan fel upp till
0.003 få passera vid konfidensgraden 0.99. Om intervallens
felsannolikheter är hälften av eller dubbelt den avsedda så
känns det
som rätt grova fel.
Del 3: Resultatens giltighet.
Resultaten är simulerade för speciella värden på fördelningarnas
parametrar. Visa att om x_1, ..., x_n är ett stickprov (en simulerad
kolumn av data) och man bildar medelvärde och
standardavvikelse och beräknar intervallgränserna V och H
eller om man istället transformerar sina data linjärt så att
y_i=a+bx_i, alla i, (b>0), och genomför samma beräkningar för y_i, så
inträffar fel av typen V>mu eller H<mu precis samtidigt för
x-data som för y-data. Redovisa din beräkning som skall göras rent
formelmässigt och inte i form av beräknade exempel.
Slutsatsen man kan dra är att normalfördelningsresultaten gäller för
alla normalfördelningar, exponentialfördelningsresultaten gäller
oberoende av parametern (här skiljer bara en multiplikativ faktor
mellan olika fördelningar), rektangulärfördelningsresultaten gäller
alla rektangulärfördelningar eftersom man i alla dessa fall kan
transformera linjärt mellan fördelningar med olika
parametervärden. Däremot kan man inte göra sådana generaliseringar i
klassen av Gamma, Weibull, Poisson, Binomial m fl. fördelningar.
INLÄMNING
Skriv rapporten som en lättläst rätt kortfattad
text med figurer, tabeller (kan vara handskrivna) och formler och lämna in i
pappersform. Datalistor och elektronisk form accepteras inte.
Se till att de ställda frågorna besvarats.
Det är ofta bekvämt att skapa en logfil med kommandot
diary bonus2.dia (i starten av körningen) och kommandot diary off
(i slutet) och sedan editera filen bonus2.dia och ta
bort matlabkod och annat som inte skall in
i rapporten. Skriv namn (tydligt) och personnummer på redovisningens
framsida.
Deadline (ej förhandlingsbar) för inlämning
Vid det sista övningstillfället. Lämnas hos den respektive övningsledaren.
Besked om erhållen bonus utlovas inte före läsperiodens slut men
bonusen räknas i första tentan.