Datorlaboration 7 Simuleringsbaserade tekniker
2. DATORLABORATION 7 Under denna laboration ska ni få prova några enklare datorbaserade statistiska tester. Vi använder PopTools - en så kallad "add-in" till MS Excel som finns på datorerna i datorsalen. Skulle ni vilja prova programmet hemma, finns det att ladda ner utan kostnad på Internet på följande länk: http://www.cse.csiro.au/poptools/ Innan ni börjar måste ni kontrollera om PopTools är aktiverat. I så fall finns en meny med detta namn i överkanten av Excel. Om inte, följ nedanstående instruktioner: Verktyg - Tillägg - Bläddra - C:\Program Files\PopTools. Filformat = Tillägg Klicka på filen PopTools och se till att PopTools är förkryssat som "Tilläggsmakro" Vi inleder labben med en medelvärdesjämförelse. För denna första uppgift ges detaljerade instruktioner så att ni kommer i gång. Be er lärare om hjälp om ni har frågor. Randomiseringstest (medelvärdesjämförelse - två stickprov) Ni ska jämföra längder hos käkben (mandibula) hos hanar och honor av guldschakal (Canis aureus) skiljer sig könen med avseende på medellängd?. Följande data (mm) har uppmätts: Hanar: 120, 107, 110, 116, 114, 111, 113, 117, 114, 112 Honor: 110, 111, 107, 108, 110, 105, 107, 106, 111, 111 1. Öppna Excel och mata in ovanstående data i två intilliggande kolumner i ett kalkylblad. 2. Börja med att beskriva de båda stickproven med avseende på stickprovsstorlek, medelvärde, och varians. Vilket stickprov uppvisar längst medellängd? Räkna ut medellängdsskillnaden. 3. Genomför ett "traditionellt" t-test (ex. med hjälp av dataanalysmodulen i Excel). Spara data, medelvärden, p-värde mm. i ert kalkylblad. 4. Genomför nu istället ett så kallat randomiseringstest a. Börja med att välja Resample under menyn PopTools b. I fältet Input range markerar ni era data (de två intilliggande kolumnerna). c. I fältet Output range markerar ni ett område exakt lika stort som "input range" (välj ett område strax intill era data) d. Se därefter till att knapparna Without replacement (Shuffle) samt Both är förprickade. Dessa båda val innebär att programmet slumpmässigt kommer att blanda om (permutera) era data så att värdena kan hamna på vilken rad/ kolumn som helst. e. Det bör nu se ut som i figuren nedan (bortsett från att ni förmodligen skrivit in era data i andra celler). Tryck därefter på Go!
3. f. Kontrollera att samtliga värden från tidigare finns kvar (men hamnat på nya platser). Prova att kopiera det nya (permuterade) cellområdet för att därefter klistra in det på samma plats igen. Vad händer? g. Det är nu dags att ta reda på om den ursprungliga medellängsskillnaden är osedvanligt stor (eller liten, beroende på om ni uttryckt skillnaden som hanarnas medelvärde minus honornas, eller tvärtom). För att angripa denna fråga ska vi konstruera en referensfördelning bestående av ett stort antal randomiserade (slumpmässiga) medelvärdesskillnader. h. Börja med att, i ert kalkylblad, skriva en formel som räknar ut medelvärdesskillnaden för de båda randomiserade kolumnerna. Denna differens utgör vår test-statistika. i. Välj Monte Carlo analysis vilket återfinns under menyn PopTools, samt undermenyn Simulation tools j. I fältet Dependent range markerar ni den cell som innehåller den randomiserade medelvärdesskillnaden. k. I fältet Test values markerar ni cellen som innehåller den ursprungligen observerade medelvärdesskillnaden l. Välj antal replikat: Number of replicates. Defaultvärdet är 100. Detta är ett ganska lågt tal - höj värdet till 1000, eller ännu högre. m. I fältet Output (choose 1 cell) väljer ni en tom cell i ert kalkylblad, förslagsvis någonstans till höger (eller nedanför) de tidigare ifyllda cellerna. n. Välj typ av "test" genom att pricka i knappen ">=" under Test criterion. Tryck därefter på Go!
4. o. Resultatet av randomiseringstestet presenteras i form av en liten tabell, av vilken det (bland annat) framgår i hur många av upprepningarna som den randomiserade medelvärdesskillnaden befanns vara lika stor, eller större, än den ursprungligen observerade skillnaden. Detta antal delat med antalet upprepningar (vilket ni får räkna ut själva) utgör testets p-värde. Vad blev resultatet? Jämför med p-värdet från ert tidigare t-test slutsats? p. Avsluta genom att upprepa randomiseringstestet. Denna gång kan ni även bocka i rutan Keep results. Nu sparas samtliga randomiserade medelvärdesskillnader i ett eget kalkylblad. Använd dessa värden och konstruera, med hjälp av datanalys-modulen, ett histogram som grafiskt illustrerar er referensfördelning och innebörden av p-värdet. Konfidensintervall med hjälp av "bootstrapping" Använd åter era data för käkbenslängder. Denna gång ska ni, utifrån samtliga värden (båda könen), konstruera ett konfidensintervall inom vilket det sanna populationsmedelvärdet ligger med en viss sannolikhet. 1. Börja med att, som repetition, beräkna ett traditionellt 95%-konfidensintervall med hjälp av t- fördelningen. Spara resultatet för kommande jämförelse. Formeln är som bekant följande: 2. Konstruera ett motsvarande konfidensintervall med hjälp av dragning med återläggning ("bootstrap") i PopTools.
a. Gör inledningsvis som i föregående uppgift (välj Resample etc.). Till skillnad mot tidigare ska ni dock denna gång markera alternativet som innebär dragning med återläggning (With replacement). Välj vidare alternativet Both, innan ni trycker på Go. b. Räkna ut medelvärdet för de "resamplade" värdena. Detta utgör den test-statistika som bildar referensfördelning då konfidensintervallet skall konstrueras. c. Använd åter Monte Carlo analysis för att återupprepa dragningen med återläggning (samt beräkning av medelvärdet) ett stort antal gånger. I fälten Lower Percentile och Upper percentile är markerat vilka konfidensgränser som ni vill få rapporterade. Defaultvärden är 0.025 och 0.975, d.v.s. ett 95%-interval. Vad blev resultatet? d. Kör om analysen några gånger och jämför resultaten varför varierar de? e. Avsluta med att, med hjälp av PopTools, istället konstruera ett 50%-konfidensintervall för samma data. Hur skiljer sig detta intervall från det tidigare? Varför? 5. Korrelationstest baserat på permutationer Följande data utgörs av ålder (X) och leverstorlek (Y) uttryckt som volym (milliliter) per enhet kroppsvikt (kilogram) hos femton friska, slumpvis valda, barn: Ind. X Y 1 0.5 41 2 0.7 55 3 2.5 41 4 4.1 39 5 5.9 50 6 6.1 32 7 7.0 41 8 8.2 42 9 10.0 26 10 10.1 35 11 10.9 25 12 11.5 31 13 12.1 31 14 14.1 29 15 15.0 23 1. Mata in dessa data i ett nytt kalkylblad i två intilliggande kolumner (kontrollera först om Windows på er dator är inställt för decimalpunkt eller decimalkomma ) 2. Räkna ut korrelationskoefficienten för X och Y. För detta används excel-kommandot =PEARSON(array1;array2), där array1 och array2 utgör cellreferenserna för X- och Y- kolumnerna. Illustrera även era data grafiskt med hjälp av en xy-plot. 3. Konstruera nu ett permutationsbaserat korrelationstest med hjälp av PopTools och det ni lärt er tidigare. Vad utgör noll-hypotesen? Vad kommer ni fram till?
6. Extrauppgift Konstruera ett permutationstest som utgör ett alternativ till vanlig variansanalys. Tabellen innehåller uppmätt stressminskning vid tre olika behandlingar (A-C). Treatment Subject A B C 1 16 26 22 2 16 20 23 3 17 21 22 4 28 29 36 Jämför resultatet med det från en vanlig ANOVA (tips: i PopTools, under Extra stats, finns en rutin för detta som ni kan använda).