310 likes | 491 Vues
Help! Statistiek!. Doorlopende serie laagdrempelige lezingen, voor iedereen vrij toegankelijk. Doel: Informeren over statistiek in klinisch onderzoek. Tijd: Derde woensdag in de maand, 12-13 uur 17 december Resampling technieken 21 januari Poisson regressie
E N D
Help! Statistiek! Doorlopende serie laagdrempelige lezingen, voor iedereen vrij toegankelijk. Doel: Informeren over statistiek in klinisch onderzoek. Tijd: Derde woensdag in de maand, 12-13 uur 17 december Resampling technieken 21 januari Poisson regressie 18 februari Graven naar causaliteit Sprekers: Vaclav Fidler, Hans Burgerhof, Wendy Post, Sacha la Bastide www.EpidemiologyGroningen.nl
Inferentiële (verklarende) statistiek Maar wat als we niets over de verdeling in de populatie weten? populatie steekproef Als de responsievariabele normaal verdeeld is, is [ ] een 95 % BI voor µ (als n voldoende groot)
Resampling techniekenWat en waarom? • Wat doen ze? Statistische bewerkingen met behulp van permuteren (“door elkaar husselen”) van of herhaald trekken uit de steekproefgegevens • Waarom gebruiken we deze methoden? robuust, aantrekkelijk qua eenvoud, generaliseerbaar • Waarom gebruiken we deze methoden niet altijd? als aan bepaalde voorwaarden is voldaan, zijn “normale methoden” beter (efficiënter, meer power) Bij sommige vraagstellingen is resampling geen optie
Voorbeelden van resampling • Permutatie toetsen (Ronald Fisher, 1935) • Jackknife (Quenouille, 1949; Tukey, 1958) • Bootstrap (Simon, 1969; Efron, 1979) “Oude koek” Nieuw leven ingeblazen door snellere computers
Back to basics • Basisterminologie: hoe zat het ook al weer met permutaties en combinaties? je hebt 4 verschillende letters (A, B, C en D) op hoeveel verschillende manieren kun je die permuteren (dwz: hoeveel verschillende “woorden” kun je maken)? 4! = 4*3*2*1 = 24 (4 faculteit geeft 24 permutaties) 7! = 5040 10! = 3.628.800
Combinaties • Je hebt n verschillende letters. Op hoeveel manieren kun je hier, zonder terugleggen, een groep van k letters (0 ≤ k ≤ n) uit pakken, zonder dat de volgorde van belang is? “n boven k” : het aantal combinaties van k uit n Voorbeeld:
Permutatie toetsen(randomisatie toetsen) • We willen de nulhypothese toetsen dat de steekproefgegevens van twee groepen (ter grootte n1 en n2) uit dezelfde verdeling komen. We hebben echter geen idee hoe de onderliggende verdeling er uit ziet; we mogen dus niet van een normale verdeling uitgaan • Bereken het geobserveerde verschil in (bv) gemiddelden: • Voeg alle waarnemingen samen tot één groep en trek zonder terugleggen, n1 waarnemingen uit de totale pool en beschouw deze als de waarnemingen van groep 1 (en de overige als groep 2) en bereken
Vervolg permutatietoets • Herhaal dit voor alle combinaties • of, indien dit aantal te groot is, neem een random steekproef van combinaties • De berekende verschillen worden gebruikt om de exacte verdeling van het verschil (in gemiddelden) te bepalen onder de nulhypothese dat de groepen uit dezelfde verdeling komen • of, als het aantal permutaties te groot is, wordt deze verdeling geschat • De éénzijdige P-waarde is de proportie V-waarden groter dan of gelijk aan het geobserveerde verschil
Voorbeeld permutatietoets xm <- c(176, 180, 186, 190, 193, 170, 198) xv <- c(160, 178, 166, 180, 157, 172) mean(xm) [1] 184.7 mean(xv) [1] 168.8 V <- mean(xm) - mean(xv) V [1] 15.9
Programmaatje in R Data worden gepooled xt <- c(xm, xv) myperm <- function(x) { cc <- rep(0,1000) for (i in 1:1000) { x1 <- sample(x,7) m1 <- mean(x1) m2 <- (sum(x)-sum(x1))/6 cc[i] <- m1 - m2} cc } res <- myperm(xt) hist(res) Vector met 1000 nullen Trek random 7 waarnemingen en bereken het gemiddelde Bereken het gemiddelde van de andere 6 Stop het verschil van deze gemiddelden in de vector
V = 15.88 quantile (res, c(0.025,0.975)) 2.5% 97.5% -12.59 13.42 pvalue <- sum(res>V)/1000 pvalue [1] 0.009
Tweede voorbeeld • Bij een stukje DNA van 300 basen komt de sequence AGTAGTAGT 17 maal voor • We vragen ons af of dit aantal van sequences groter is dan op grond van toeval verwacht mag worden • We permuteren alle 300 basen random 1000 maal en kijken naar het aantal maal AGTAGTAGT • In 12 gevallen vinden we 17 of meer van deze sequences • Dit geeft een P-waarde van 0,012
Permutatie toetsen • .. zijn onderdeel van de parametervrije toetsen • Fisher’s exacte toets is een permutatietoets • Mann-Whitney toets is een permutatietoets op de rangnummers van de waarnemingen
Jackknife • Bij het schatten van onbekende populatieparameters vinden we over het algemeen twee dingen belangrijk • dat onze schatter zuiver is (Engels: Unbiased), dat wil zeggen dat de verwachtingswaarde van de schatter gelijk is aan de te schatten parameter • we willen een idee hebben van de fout die we eventueel maken • Bij sommige schattingsproblemen kun je de eventuele bias verkleinen met behulp van een Jackknife procedure
Hoe werkt de Jackknife? • Hiertoe wordt de schatter n maal opnieuw berekend, steeds op een dataset van n – 1 waarnemingen, gebaseerd op het “leave one out” principe (eerst wordt de eerste waarde weggelaten, daarna de tweede, etc) • Op grond van de n schattingen kan - een schatting van de bias gemaakt worden, en daardoor een betere schatting van de parameter - de variantie geschat worden • Als alternatief kan op grond van iedere Jackknife-steekproef een “pseudowaarde” berekend worden. Ook op grond van deze waarden kan de bias geschat worden en kan ook een schatting van de variantie van de schatter verkregen worden
Voorbeeld Jackknife y <- c(3,4,5,7,8,9,12,14,15,18,30,42) Bereken de Winsorized mean (met 10 % aan beide kanten) winsorized.mean(y) [1] 13 res <- myjack(y)
Myjack myjack <- function(x) { nn <- length(x) cc <- rep(0,nn) for (i in 1:nn) cc[i] <- winsorized.mean(x[-i]) cc } Bereken de Winsorized mean op de data zonder de i-de waarneming
Voorbeeld Jackknife y <- c(3,4,5,7,8,9,12,14,15,18,30,42) Bereken de Winsorized mean (met 10 % aan beide kanten) > winsorized.mean(y) [1] 13 > res <- myjack(y) > pseudo <- n*winsorized.mean(y) - (n - 1)*res > pseudo [1] 3 3 5 7 8 9 12 14 15 18 42 42 > mean(pseudo) [1] 14.8 > var(pseudo) [1] 183.06 SE = √(183.06/12) = 3.91 95 % BI: [7.1 ; 22.5]
Waarom de Jackknife? • De Jackknife schatter verkleint eventuele bias (Quenouille 1956) • Bruikbare schatter voor de variantie van ingewikkelde schatters • Echter niet consistent als de schatter niet “glad” is, zoals bij de mediaan (“glad”: kleine veranderingen in de data geeft een kleine verandering in de schatting) Wat als 40 verandert in 41, 42, … 10 27 31 40 46 50 52 104 156 Jackknife: Mediaan wordt 43 mediaan Voor n , SEjack niet consistent Mediaan wordt 48 Mediaan wordt 45
Bootstrap • Basisidee van de bootstrap: je hebt een steekproef ter grootte n. Schat de verdeling van de steekproefgrootheid door herhaald, met terugleggen, n waarnemingen uit je steekproefgegevens te trekken • Met behulp van de steekproefgrootheid uit je bootstrap-samples kun je uitspraken doen over je onbekende populatieparameters Voorbeeld: wat is het gemiddelde eindexamencijfer van de huidige eerstejaarsstudenten Geneeskunde in Groningen?
Non-parametrische bootstrap N = 16, gemiddelde = 7.12 Trek, met terugleggen, weer 16 waarnemingen en bereken het gemiddelde Herhaal dit 1000 maal Totaal zijn er voor een steek- proef van n waarnemingen verschillende boots- trapsamples mogelijk
Bootstrap resultaten > quantile(res, c(0.025, 0.975)) 2.5% 97.5% 6.81 7.41 Onder aanname van normaliteit: 7.12 ± 2.13*0.157 [6.79 ; 7.45]
Tweede Bootstrap voorbeeldH0: = 0 Pearson r = 0,37 T = r√ ((n-2)/(1-r²)) heeft onder de H0 een t- verdeling als X en Y Normaal verdeeld Lengte gewicht 175 73 184 79 168 64 179 81 …. 193 88 Herhaald trekken van paren
Histogram van 1000 correlatiecoëfficiënten, berekend met behulp van 1000 Bootstrap samples quantile(res, c(0.025, 0.975)) 2.5% 97.5% 0.188 0.529 Met Fisher’s z-transformatie: [0,16 ; 0,54]
Waarom werkt de bootstrap? • Als je een t-toets gebruikt bij een niet-normaal verdeelde variabele, geldt volgens de Centrale Limiet Stelling dat het steekproefgemiddelde (bij grote n) wel een normale verdeling vertoont. De type I fout zal echter bij kleinere n van α = 0,05 verschillen. Als n groter wordt gaat het verschil tussen werkelijke en gewenste type I fout naar 0 naar rato van 1/√n. • Bij een bootstrap methode gaat dit verschil naar 0 naar rato 1/n.
Diverse bootstrap varianten • Smoothed bootstrap • Parametrische bootstrap • Double bootstrap • m uit n - bootstrap
samenvattend • Permutatietoetsen • Kunnen een oplossing bieden bij hypothesen toetsen als de onderliggende verdeling onbekend is • Jackknife • Te gebruiken om mogelijke bias bij schattingsproblemen te verkleinen en varianties te schatten • Bootstrap • Schatten van de verdeling van een statistic (kansvariabele) • Niet zinvol bij (bv) extreme order statistics zoals het maximum
Literatuur • Quenouille, M.H.: Notes on bias in estimation, Biometrika 1956 • Efron, B. & Tibshirani, R.: An introduction to the bootstrap, Chapman and Hall 1993 • Chernick, M.: Bootstrap Methods – a guide for practitioners and researchers, Wiley 2008 • Carpenter, J.: Bootstrap confidence intervals: when, which, what? A practical guide for medical statisticians. Statistics in Medicine , 2000 • Hongyu Jiang ; Zhou Xiao-Hua: Bootstrap confidence intervals for medical costs with censored observations Statistics in Medicine, 2002
Volgende maand Woensdag 21 januari 2009 12 – 13 uur Rode Zaal Poisson regressie