Tilastollinen tietojenkäsittely Jarkko Isotalo - TILTA4 R-ohjelmiston alkeet syksy 2011 Datan käsittely R-ohjelmistolla Tehtävä 1. Tarkastellaan seuraavaa dataa: Miehet: Naiset: pituus 175 180 165 190 174 191 paino 80 84 74 95 78 88 pituus 170 162 165 160 158 174 paino 70 62 59 55 52 66 (a) Muodosta datasta muuttujat pituus,paino ja sukupuoli. (b) Muodosta uusi muuttuja painoindeksi=paino/(pituus/100)*(pituus/100). (c) Laske painoindeksi muuttujan keskiarvo ja muodosta muuttujasta histogrammi.
syksy 2011 R-ohjelmiston alkeet TILTA4 - Jarkko Isotalo 2 Tehtävä 2. (a) Muodosta mitat niminen data.frame objekti edellisen tehtävän muuttujista. (b) Käytä cbind() käskyä yhdistämään edellisen tehtävän muuttujat. (c) Laske otoskeskihajonta mitat datan painoindeksi muuttujasta? Tehtävä 3. (a) Poimi mitat datasta kolmas ja viides havaintorivi. (b) Muodosta mitat datasta osadata, mikä koostuu naisista. (c) Järjestä muuttuja mitat$paino laskevaan järjestykseen. (d) Järjestä mitat data muuttujan paino suhteen laskevaan järjestykseen. (e) Tallenna mitat data kovalevylle tekstimuodossa nimellä mitat.txt. (f) Tallenna mitat data kovalevylle R:n tiedostomuodossa mitat.rdata ja koko työtila kovalevylle muodossa kaikki.rdata.
syksy 2011 R-ohjelmiston alkeet TILTA4 - Jarkko Isotalo 3 Tehtävä 4. (a) Lue data maailma.txt R:än. (b) Piirrä pisteparvi datan muuttujista vaentiheys ja elinaika ja laske muuttujien välinen korrelaatiokerroin. Listat ja funktiot Tehtävä 5. (a) Muodosta lista niminen list objekti siten, että lista sisältää argumentit weight=paino ja height=pituus. (b) Muodosta lause niminen list objekti, mikä sisältää lauseen "R on tilastollinen ohjelmointiympäristö" ja kyseisen lauseen sanojen lukumäärän.
syksy 2011 R-ohjelmiston alkeet TILTA4 - Jarkko Isotalo 4 Tehtävä 6. (a) Muodosta funktio joka laskee annetusta vektorista lukujen minimiarvon, 1. kvantiilin, mediaaniarvon, 3. kvantiilin ja maksimiarvon ja palauttaa nämä lista muodossa. Testaa funktion toimivuutta painoindeksi muuttujan avulla. (b) Muodosta R-funktio, joka laskee funktion { x/y, jos y 0 f(x, y) = x, jos y = 0 arvon.
Tilastollinen tietojenkäsittely Jarkko Isotalo - TILTA4 Tilastotieteen perusteita syksy 2011 Todennäköisyyslaskentaa Tehtävä 1. Olkoon X satunnaismuuttuja, joka noudattaa normaalijakaumaa X N(8, 2), missä siis odotusarvo µ = 8 ja varianssi σ 2 = 2. (a) Laske käyttäen sopivaa R:n funktiota todennäköisyys P (7 X 10). (b) Mikä on se ˆx:n arvo, jolle on voimassa todennäköisyys P (X ˆx) = 0.95. (c) Piirrä satunnaismuuttujan X tiheysfunktion f(x) kuvaaja. Tehtävä 2. Olkoon X satunnaismuuttuja, joka noudattaa binomijakaumaa X Bin(10, 0.3), missä siis toistokokeiden lukumäärä n = 10 ja yhdessä kokeessa onnistumisen todennäköisyys p = 0.3. (a) Laske käyttäen sopivaa R:n funktiota todennäköisyys P (X = 5). (b) Laske lisäksi todennäköisyydet P (X 2) ja P (4 X 9). (c) Piirrä satunnaismuuttujan X pistetodennäköisyyden f(x) kuvaaja.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 2 Analyysit yhdelle muuttujalle Tehtävä 3. (a) Laske mitat datasta muuttujalle painoindeksi otoskeskiarvo, otosmediaani ja otoshajonta. (b) Laske mitat datasta otostunnuslukuja summary() käskyllä. (c) Laske muuttujasta painoindeksi otoskvantiilit ja empiirisen kertymäfunktion arvot. Tehtävä 4. (a) Piirrä painoindeksi muuttujasta histogrammi. (b) Piirrä paino ja pituus muuttujista boxplotit. (c) Piirrä paino muuttujasta Q-Q-plotti. (d) Piirrä sukupuoli muuttujasta pylväsdiagrammi ja piirakkakuvio.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 3 Tehtävä 5. (a) Testaa t-testillä, onko painoindeksi muuttujan odotusarvolle µ voimassa hypoteesi H 0 : µ = 26. (b) Testaa Wilcoxonin testillä, onko painoindeksi muuttujan odotusarvolle µ voimassa hypoteesi H 0 : µ = 26. Ehdolliset analyysit Tehtävä 6. (a) Laske mitat datasta muuttujalle painoindeksi ehdolliset otoskeskiarvot sukupuolen suhteen. (b) Laske paino ja pituus muuttujille ehdolliset otoskeskiarvot sukupuolen suhteen aggregate() käskyllä. (c) Laske paino ja pituus muuttujille ehdollisia otostunnuslukuja sukupuolen suhteen by() käskyllä.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 4 Tehtävä 7. (a) Piirrä painoindeksi muuttujasta ehdolliset histogrammit sukupuolen suhteen. (b) Piirrä paino muuttujasta ehdolliset boxplotit miehille ja naisille. (c) Piirrä pituus muuttujasta stripchart() sukupuolen suhteen. Tehtävä 8. (a) Testaa t-testillä onko painoindeksi muuttujan odotusarvot yhtäsuuret miehillä ja naisilla: H 0 : µ M = µ N. (b) Testaa Wilcoxonin testillä onko painoindeksi muuttujan odotusarvot yhtäsuuret miehillä ja naisilla: H 0 : µ M = µ N. (c) Testaa onko painoindeksi muuttujan varianssit yhtäsuuret miehillä ja naisilla: H 0 : σ 2 M = σ 2 N.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 5 Kolmen otoksen testit Tehtävä 9. (a) Luokittele pituus muuttuja kolmeen luokkaan. (b) Testaa varianssianalyysin avulla onko painoindeksi muuttujan odotusarvot yhtäsuuret luokitellun pituus muuttujan tasoilla. (c) Testaa Kruskal-Wallis testin avulla onko painoindeksi muuttujan odotusarvot yhtäsuuret luokitellun pituus muuttujan tasoilla. (d) Tee parittaiset t-testit edellisen kohdan testaustilanteessa ja testaa varianssien homogeenisyyttä Bartlettin testillä. Riippuvuuskuvaajat ja regressioanalyysi Tehtävä 10. (a) Piirrä paino ja pituus muuttujien välinen pisteparvi niin, että sukupuolet erottautuvat kuvassa. (b) Piirrä paino ja pituus muuttujien välinen bagplot() kirjaston aplpack avulla. (c) Piirrä paino ja pituus muuttujien väliset Chernoffin kasvot.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 6 Tehtävä 11. (a) Muodosta lineaarinen regressiomalli missä selitettävänä muuttujana on paino ja selittävänä muuttujana pituus. (b) Muodosta lineaarinen regressiomalli missä selitettävänä muuttujana on paino ja selittävinä muuttujina pituus ja sukupuoli. (c) Laske erilaisia korrelaatiokertoimia paino ja pituus muuttujien väliltä. Taulukot ja riippumattomuuden testaus Tehtävä 12. (a) Muodosta paino ja pituus muuttujista kolmiluokkaiset l.paino ja l.pituus muuttujat ja tee uusista muuttujista ristiintaulukko. (b) Tee xtabs() ja ftable() käskyillä kolme ulotteiset ristiintaulukot muuttujista l.paino, l.pituus ja sukupuoli. (c) Laske suhteelliset frekvenssit l.paino ja l.pituus muuttujien ristiintaulukosta. (d) Muodosta data.frame() objekti l.paino ja l.pituus muuttujien ristiintaulukosta.
syksy 2011 Tilastotieteen perusteita TILTA4 - Jarkko Isotalo 7 Tehtävä 13. (a) Piirrä l.paino ja l.pituus muuttujien ristiintaulukosta ja suhteellisten frekvenssien ristiintaulukosta pylväsdiagrammit. (b) Piirrä l.paino ja l.pituus muuttujien ristiintaulukosta ja suhteellisten frekvenssien ristiintaulukosta dotchart() kuva. (c) Piirrä l.paino ja l.pituus muuttujien ristiintaulukosta piirakkakuvio. Tehtävä 14. (a) Luokittele pituus kahteen luokkaan. Testaa Fisherin ja χ 2 -testillä, ovatko luokiteltu pituus ja sukupuoli riippumattomia toisistaan. (b) Testaa χ 2 -testillä, ovatko l.paino ja l.pituus muuttujat riippumattomia toisistaan.
Tilastollinen tietojenkäsittely Jarkko Isotalo - TILTA4 Satunnaislukujen generoiminen syksy 2011 Johdanto Laskennallisessa tilastotieteessä tutkitaan usein tarkasteltavaa satunnaisilmiötä simuloinnin avulla. Jotta tarkasteltavan satunnaisilmiön todellisuutta pystyttäisiin jäljittelemään, tarvitaan menetelmiä kuinka tuottaa havaittuja toteutuneita arvoja tarkasteltavasta satunnaisilmiöstä. Satunnaislukujen generoimiselle tarkoitetaan sellaista toimintaa, missä keinotekoisesti tuotetaan n kappaletta toteutuneita arvoja x 1, x 2,..., x n tarkasteltavasta satunnaismuuttujasta X. Satunnaismuuttuja X noudattaa aina jotakin todennäköisyysjakaumaa. Merkitään X:n kertymäfunktiota P (X x) = F X (x):llä ja tiheysfunktiota (pistetodennäköisyysfunktiota) f X (x):llä. Satunnaismuuttuja X noudattaa kertymäfunktion F X määrittelemää jakaumaa: X F X (x) = x f X (t) dt. Satunnaislukujen generoinnin kannalta kaikista tärkein todennäköisyysjakauma on [0, 1] välillä määritelty jatkuva tasajakauma. Jos satunnaismuuttuja U noudattaa tasajakaumaa U T as(0, 1), niin silloin sen tiheys- ja kertymäfunktio ovat muotoa f U (u) = 1 ja F U (u) = u, u [0, 1]. Tasajakauman merkitys satunnaislukujen generoimisessa johtuu seuraavasta tuloksesta. Lause 1. Olkoon satunnaismuuttujalla X kertymäfunktio F X (x) ja määritellään kertymäfunktion F X yleistetty käänteisfunktio F X seuraavasti: F X (u) = inf{x : F X(x) u, u [0, 1]}. Jos satunnaismuuttuja U noudattaa jatkuvaa tasajakaumaa U T as(0, 1), niin silloin satunnaismuuttuja F X (U) noudattaa kertymäfunktion F X määrittelemää jakaumaa. Todistus. Kaikille u [0, 1] ja x F X ([0, 1]) on voimassa F X (F X(x)) x, u F X (F X (u)). Täten joukoille on voimassa {(u, x) : F X (u) x} = {(u, x) : u F X(x)}, ja siten P (F X (U) x) = P (U F X(x)) = F U (F X (x)) = F X (x).
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 2 Edellä esitetyn tuloksen perusteella saadaan yleinen menetelmä, kuinka tuottaa n kappaletta arvoja x = (x 1, x 2,..., x n ) satunnaismuuttujan X jakaumasta F X. Ensiksi siis tuotetaan n kappaletta toteutuneita arvoja u = (u 1, u 2,..., u n ) tasajakaumasta U T as(0, 1) ja sitten tehdään muutos x = F X (u) eli x 1 F X x 2 (u 1). = F X (u 2).. F X (u n) x n Käytännössä yleistetyn käänteisfunktion F X muodostaminen voi olla hyvin vaikeaa ja siten käytännössä satunnaislukujen generointi kannattaa perustuu muihin menetelmiin kuin yleistetyn käänteisfunktion käyttöön. Edellä oleva esitys kuitenkin antaa käsityksen siitä, että tasajakaumalla on satunnaismuuttujien tuottamisessa erityinen rooli. Satunnaislukujen generoiminen R-ohjelmistolla R-ohjelmistossa on yleisimmille todennäköisyysjakaumille valmiit funktiot kuinka generoida kyseisestä jakaumasta arvoja. Alla olevassa taulukossa on listattu käytetyimpien jakaumien kertymäfunktiot ja generointifunktiot. Jakauma F x Generaattiori Parametrit Tasajakauma punif runif min, max Normaalijakauma pnorm rnorm mean, sd Studentin t-jakauma pt rt df F-jakauma pf rf df1,df2 χ 2 -jakauma pchisq rchisq df Beta-jakauma pbeta rbeta shape1, shape2 Gamma-jakauma pgamma rgamma shape, rate tai scale Binomijakauma pbinom rbinom size, prob Negatiivinen binomijakauma pnbinom rnbinom size, prob Poissonin jakauma ppois rpois lambda Tehtävä 1. Generoi satunnaismuuttujasta Y 100 alkion satunnaisotos kun oletetaan, että Y muodostuu lineaarisesta funktiosta Y = β 0 + β 1 X + σε, missä β 0, β 1, X, σ ja ε ovat kaikki toisistaan riippumattomia satunnaismuuttujia ja noudattavat jakaumia β 0 N(2, 1/2), β 1 Beta(2, 2), X N(3, 1), σ Gamma(2, 1), ε N(0, 2).
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 3 Käänteistransformaatiomenetelmä Edellä ei käsitelty, kuinka R-ohjelmisto käytännössä tuottaa eri todennäköisyysjakaumien tilanteessa satunnaislukuja. Riippuen jakaumasta menetelmä vaihtelee ja usein menetelmä on myös hyvin monimutkainen, jotta satunnaislukuja saataisiin generoitua mahdollisimman tehokkaasti. Seuraavaksi katsotaan yksinkertaisia käytännön menetelmiä, joiden avulla satunnaislukuja voidaan generoida. Ensimmäisenä tarkastellaan käänteistransformaatiomenetelmää. Käänteistransformaatiomenetelmä perustuu lauseeseen 1. tilanteessa, missä satunnaismuuttujan X kertymäfunktiolla F X on olemassa käänteisfunktio F 1 X : F 1 X (F X(x)) = x, F X (F 1 X (u)) = u, u [0, 1]. Käänteistransformaatiomenetelmän algoritmi on täten seuraava: Algoritmi 1. 1. Johdetaan kertymäfunktion F X käänteisfunktion F 1 X (u) kaava. 2. Generoidaan luku u jakaumasta U T as(0, 1). 3. Lasketaan x = F 1 X (u). Tehtävä 2. Olkoon satunnaismuuttuja X:n tiheysfunktio muotoa f X (x) = 2x, 0 < x < 1. Generoi 100 havainnon satunnaisotos X:n jakaumasta.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 4 Tehtävä 3. Olkoon satunnaismuuttuja X:n kertymäfunktio muotoa F X (x) = 1 e x. Generoi 100 havainnon satunnaisotos X:n jakaumasta.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 5 Käänteistransformaatiomenetelmä, diskreetti jakauma Diskreetin jakauman tilanteessa satunnaislukuja voidaan generoida seuraavan algoritmin mukaan. Käänteistransformaatiomenetelmää kutsutaan diskreetin jakauman tilanteessa myös taulukkomenetelmäksi. Algoritmi 2. 1. Järjestetään satunnaismuuttujan X tulosvaihtoehdot nousevaan järjestykseen x (1), x (2),..., x (i),..., x (p) niin, että on voimassa F X (x (i 1) ) F X (x (i) ). 2. Generoidaan luku u jakaumasta U T as(0, 1). 3. Valitaan x (i), jolle voimassa F X (x (i 1) ) < u F X (x (i) ). Tehtävä 4. Olkoon satunnaismuuttuja X:n pistetodennäköisyysfunktio muotoa x 0 1 2 3 4 f X (x) 0.1 0.2 0.2 0.2 0.3 Generoi 100 havainnon satunnaisotos X:n jakaumasta.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 6 Hyväksymis-hylkäysmenetelmä Mikäli satunnaismuuttujan X kertymäfunktion F X käänteisfunktiota F 1 X tai yleistettyä käänteisfunktiota F X on mahdotonta muodostaa, niin silloin hyväksymis-hylkäysmenetelmän avulla voidaan kuitenkin tuottaa satunnaislukuja X:n jakaumasta. Hyväksymishylkäysmenetelmässä pyritään ensiksi löytämään jokin sellainen satunnaismuuttuja Y, jonka jakaumasta osataan muilla menetelmillä generoida satunnaislukuja. Merkitään satunnaismuuttujan Y tiheysfunktiota f Y (y):llä. Mikäli on olemassa jokin sellainen vakio c, että f X (y) cf Y (y), niin silloin voidaan käyttää satunnaismuuttujan Y jakaumaa hyväksi, jotta saadaan generoitua satunnaislukuja X:n jakaumasta. Hyväksymishylkäysmenetelmän algoritmi on seuraavanlainen. Algoritmi 3a. Olkoon c sellainen realiluku, jolle on voimassa f X (y) cf Y (y), y. 1. Generoidaan y jakaumasta, jonka tiheysfunktio on f Y (y). 2. Generoidaan u jakaumasta U T as(0, cf Y (y)). 3. Jos u f X (y), niin asetetaan x = y, muuten palataan kohtaan 1. Algoritmia 3a. vastaa myös seuraava algoritmi: Algoritmi 3b. 1. Generoidaan y jakaumasta, jonka tiheysfunktio on f Y (y). 2. Generoidaan u jakaumasta U T as(0, 1). 3. Jos u f X(y) cf Y, niin asetetaan x = y, muuten palataan kohtaan 1. (y) Hyväksymis-hylkäysmenetelmä toimii, koska hyväksytyn satunnaismuuttujan Y U f X(Y ) cf Y (Y ) jakauma on sama kuin X:n jakauma: ( ) ( P Y x U f ) X(Y ) P Y x, U f X(Y ) cf Y (Y ) = ( ) cf Y (Y ) P U f X(Y ) cf Y (Y ) x fx (y)/cf Y (y) duf 0 Y (y)dy = fx (y)/cf Y (y) duf 0 Y (y)dy = x f X (y) cf Y (y) f Y (y)dy f X (y) f cf Y (y) Y (y)dy x = f x X(y)dy f X(y)dy = f X(y)dy = P (X x). 1
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 7 Tehtävä 5. Noudattakoon satunnaismuuttuja X beta-jakaumaa X Beta(2, 2). Generoi 100 havainnon satunnaisotos X:n jakaumasta hyväksymis-hylkäysmenetelmällä. Tehtävä 6. Generoi 100 havainnon satunnaisotos normaalijakaumasta N(0, 1) hyväksymishylkäysmenetelmällä käyttäen Cauchyn jakaumaa instrumenttijakaumana.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 8 Muunnokset Useita tunnettuja satunnaismuuttujia saadaan muodostettua muunnoksena toisista satunnaismuuttujista. Saman muunnoksen avulla voidaan sitten generoida havaintoja tarkasteltavasta satunnaismuuttujasta. Alla on listattu joitakin yleisesti käytettyjä ja tunnettuja muunnoksia. Box-Muller muunnos: Olkoon U 1 ja U 2 riippumattomia satunnaismuuttujia, jotka noudattavat tasajakaumaa U 1 T as(0, 1) ja U 2 T as(0, 1). Tällöin satunnaismuuttujat X 1 = 2 log(u 1 ) cos(2πu 2 ), X 2 = 2 log(u 2 ) sin(2πu 1 ) ovat toisistaan riippumattomia ja noudattavat standardoitua normaalijakaumaa: X 1 N(0, 1) ja X 2 N(0, 1). Normaalijakauman lineaarinen muunnos. Noudattakoon satunnaismuuttuja Z standardoitua normaalijakaumaa Z N(0, 1). Tällöin satunnaismuuttuja X = µ + σz noudattaa normaalijakaumaa X N(µ, σ 2 ). Normaalijakauman neliömuunnos. Noudattakoon riippumattomat satunnaismuuttujat Z 1, Z 2,..., Z p standardoitua normaalijakaumaa Z i N(0, 1). Tällöin satunnaismuuttuja X = Z 2 1 + Z 2 2 + + Z 2 p noudattaa χ 2 -jakaumaa X χ 2 (p) vapausastein df = p. Normaali- ja χ 2 -jakauman suhde. Jos Z N(0, 1) ja X χ 2 (p) ovat riippumattomia, niin silloin suhde T = Z X/p noudattaa Studentin t-jakaumaa T t(p) vapausastein df = p. χ 2 -jakaumien suhde. Jos Y χ 2 (q) ja X χ 2 (p) ovat riippumattomia, niin silloin suhde W = Y/q X/p noudattaa F -jakaumaa W F (q, p) vapausastein df 1 = q ja df 2 = p. Gammajakaumien suhde: Jos Y Gamma(a, 1) ja X Gamma(b, 1) ovat riippumattomia, niin silloin suhde W = Y X + Y noudattaa betajakaumaa W Beta(a, b).
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 9 Tehtävä 7. Noudattakoon satunnaismuuttuja X beta-jakaumaa X Beta(2, 2). Generoi 100 havainnon satunnaisotos X:n jakaumasta gammajakaumien suhteen avulla. Tehtävä 8. Generoi 100 havainnon satunnaisotos χ 2 (7):n jakaumasta normaalijakauman neliömuunnoksen avulla.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 10 Jakaumien sekoitukset Satunnaismuuttuja Y noudattaa diskreettiä sekoitusjakaumaa, jos Y :n kertymäfunktio F Y on muotoa k F Y (y) = θ i F Xi (x i ), i=1 missä F X1, F X2,..., F Xk ovat satunnaismuuttujien X 1, X 2,..., X k kertymäfunktioita, ja vakiolle θ i > 0 on voimassa k i=1 θ i = 1. Vakioita θ i kutsutaan sekoitustodennäköisyyksiksi. Satunnaismuuttuja Y noudattaa jatkuvaa sekoitusjakaumaa, jos Y :n kertymäfunktio on muotoa F Y Tehtävä 9. Oletetaan, että F Y (y) = F Y X=x (y)f X (x) dx. X 1 N(0, 1), X 2 N(6, 1), X 3 N(12, 1). Generoi 100 havainnon satunnaisotos sekoitusjakaumasta F Y = θ 1 F X1 + θ 2 F X2 + θ 3 F X3, missä sekoitustodennäköisyydet ovat P (θ = θ 1 ) = 0.25, P (θ = θ 2 ) = 0.5, P (θ = θ 3 ) = 0.25.
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 11 Moniulotteinen normaalijakauma Satunnaisvektori x = (X 1, X 2,..., X d ) noudattaa d-ulotteista normaalijakaumaa, jos satunnaisvektorin x yhteistiheysfunktio on muotoa ( 1 f x (x) = exp 1 ) (2π) d/2 Σ 1/2 2 (x µ) Σ 1 (x µ), x R d. Satunnaisvektorin x noudattaessa moniulotteista normaalijakaumaa käytetään merkintää x N(µ, Σ), missä µ 1 σ1 2 σ 12... σ 1d µ 2 µ =., Σ = σ21 2 σ2 2... σ 2d. µ d σd1 2 σ d2... σd 2 ovat jakauman määrittävät odotusarvovektori ja kovarianssimatriisi. Kovarianssimatriisin Σ diagonaalilla on satunnaismuuttujien X i varianssit V ar(x i ) = σ 2 i ja off-diagonaalilla satunnaismuuttujien X i ja X j väliset kovarianssit Cov(X i, X j ) = σ ij. Seuraavassa on listattu joitakin moniulotteisen normaalijakauman ominaisuuksia. Lineaarinen muunnos: Jos x N(µ, Σ), niin y = Ax + b noudattaa jakaumaa y N(Aµ + b, AΣA ). Yksittäisen satunnaismuuttujan jakauma: Jos x N(µ, Σ), niin X i N(µ i, σ 2 i ). Standardoitujen satunnaismuuttujien jakauma: Jos Z 1, Z 2,..., Z d ovat riippumattomia satunnaismuuttujia, joista jokainen noudattaa standardoitua normaalijakaumaa Z i N(0, 1), niin silloin satunnaisvektori z = (Z 1, Z 2,..., Z d ) noudattaa moniulotteista normaalijakaumaa z N(0, I), missä 1 0... 0 0 1... 0 I =.. 0 0... 1 Generointimuunnos: Olkoon z N(0, I) ja olkoon kovarianssimatriisilla Σ matriisihajotelma Σ = CC. Silloin x = µ + Cz noudattaa jakaumaa x N(µ, Σ). Ehdollinen jakauma: Tarkastellaan ositettua satunnaisvektoria x = (x 1, x 2). Jos x N(µ, Σ), eli ( ) (( ) ( )) x1 µ1 Σ11 Σ N, 12, x 2 µ 2 Σ 21 Σ 22 niin silloin ehdollinen satunnaisvektori x 2 x 1 noudattaa moniulotteista normaalijakaumaa x 2 x 1 N(µ 2 + Σ 21 Σ 1 11 (x 1 µ 1 ), Σ 22 Σ 21 Σ 1 11 Σ 12 )
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 12 Tehtävä 10. Noudattakoon satunnaismuuttujat X 1 ja X 2 kaksiulotteista normaalijakaumaa ( ) (( ) ( )) X1 10 1 0.8 N, 5 0.8 1 X 2 Merkitään W :llä X 2 :n ehdollista jakaumaa kun X 1 on saanut arvon X = 12, eli W = X 2 X 1 = 12. 1. Mitä jakaumaa W noudattaa? 2. Laske todennäköisyydet P (W < 5) ja P (2 < W < 3). Satunnaislukujen generoiminen d-ulotteisen normaalijakauman x N(µ, Σ) tilanteessa perustuu seuraavaan algoritmiin. Algoritmi 4. 1. Generoidaan d kappaletta satunnaislukuja z i standardoidusta normaalijakaumasta N(0, 1) ja muodostetaan luvuista vektori z = (z 1, z 2,... z d ). 2. Muodostetaan kovarianssimatriisille matriisihajotelma Σ = CC esimerkiksi ominaisarvohajotelman tai Choleskin hajotelman avulla. 3. Tehdään muunnos x = µ + Cz. Kovarianssimatriisin Σ ominaisarvohajoitelma saadaan tehtyä R-ohjelmistossa eigen() funktiolla. Funktio palauttaa ominaisarvovektorit T = (t 1 : t 2 : : t d ) ja ominaisarvot λ = (λ 1, λ 2,..., λ d ). Matriisihajotelmassa Σ = CC tarvittava matriisi C saadaan nyt ominaisarvohajotelman tilanteessa muodostettua joko kaavalla C = T diag(λ) 1/2 tai kaavalla C = T diag(λ) 1/2 T. Cholenskin hajotelma saadaan tehtyä R:ssä puolestaan funktiolla chol(), mikä palauttaa ylädiagonaalimatriisin niin että C = chol(σ).
syksy 2011 Satunnaislukujen generoiminen TILTA4 - Jarkko Isotalo 13 Tehtävä 11. Generoi 200 alkion satunnaisotos kolme ulotteisesta normaalijakaumasta x N(µ, Σ), missä µ = (0, 1, 2) 1 0.5 0.5 Σ = 0.5 1 0.5. 0.5 0.5 1
Tilastollinen tietojenkäsittely Jarkko Isotalo - TILTA4 Monte Carlo menetelmät syksy 2011 Monte Carlo integrointi Monte Carlo menetelmiksi voidaan kutsua kaikkia sellaisia menetelmiä, joissa simulointia käytetään hyväksi ratkaistaessa tilastollisen päättelyn ja numeerisin analyysin ongelmia. Ensimmäiseksi tarkastellaan Monte Carlo integrointia. Olkoon ongelmana laskea integraalin θ = b a g(x)dx arvo. Jos ajatellaankin, että integraalissa x on satunnaismuuttuja, joka noudattaa tasajakaumaa x T as(a, b) eli f x (x) = 1 b a, niin yllä oleva integraali on yhtä kuin θ = b a g(x)dx = 1 f x (x) b a b g(x)f x (x)dx 1 = (b a) g(x) a b a dx = (b a) E(g(x)). Odotusarvoa E(g(x)) voidaan nyt numeerisesti estimoida generoimalla ensiksi n kappaleen satunnaisotos x 1, x 2,..., x n tasajakaumasta T as(a, b) ja laske sitten satunnaisotoksen avulla otoskeskiarvo n E(g(x)) i=1 = g(x) = g(x i). n Täten integraalin θ = b g(x)dx numeeriseksi estimaatiksi saadaan a ˆθ = (b a)g(x). Algoritmi 1. Monte Carlo estimaattori integraalille θ = b g(x)dx lasketaan seuraavasti: a 1. Generoidaan x 1, x 2,..., x n tasajakaumasta x T as(a, b). 2. Lasketaan g(x) = 1 n n i=1 g(x i). 3. Lasketaan ˆθ = (b a)g(x).
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 2 Tehtävä 1. Laske Monte Carlo estimaatti integraalille θ = 4 2 e x dx. Tehtävä 2. Käytä Monte Carlo menetelmää standardoidun normaalijakauman kertymäfunktion arvon laskemiseen: F X (x) = x 1 2π e t2 /2 dt.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 3 Bootstrap estimoinnista Bootstrap on epäparametrinen Monte Carlo simulointimenetelmä, missä havaitusta otoksesta x = (x 1, x 2,..., x n ) poimitaan palauttamalla (resampling) uusia otoksia x = (x 1, x 2,..., x n). Bootstrapin avulla voidaan tutkia jonkin otosfunktion W = W (x) jakaumaa. Bootstrapissä alkuperäisestä otoksesta x muodostetaan uusia otoksia b = 1, 2,..., B kertaa ja jokaisen bootstrap otoksen tilanteessa x (b) = (x (b) 1, x (b) 2,..., x (b) n ) lasketaan otosfunktion W (b) = W (b) (x (b) ) arvo. Saatujen otosfunktioiden arvojen W (b) avulla voidaan estimoida otosfunktion W jakaumaa. Olkoon x = (x 1, x 2,..., x n ) satunnaisotos satunnaismuuttujan X F X jakaumasta. Olkoon lisäksi θ jokin tuntematon parametri ja olkoon ˆθ = ˆθ(x) otoksesta x laskettu tuntemattoman parametrin estimaatti. Nyt siis W = ˆθ. Bootstrap menetelmällä voidaan estimoida estimaattorin ˆθ jakaumaa Fˆθ. Bootstrap menetelmää käytetään erityisesti erilaisten luottamusväliestimaattien muodostamiseen tuntemattomalle parametrille θ. Algoritmi 3. 1. Jokaisella bootstrap estimointikerralla b = 1, 2,..., B (a) Generoidaan otos x (b) = (x 1, x 2,..., x n) poimimalla n:n alkion otos havaitusta otoksesta x = (x 1, x 2,..., x n ) palauttamalla. (b) Lasketaan bootstrap estimaatti ˆθ (b) = ˆθ (b) (x (b) ) bootstrap otoksesta x (b). 2. Bootstrap estimaatti estimaattorin ˆθ = ˆθ(x) jakaumalle Fˆθ on estimaattien ˆθ (1),..., ˆθ (B) empiirinen jakauma. Tehtävä 3. Estimoi maailma.txt aineiston vaentiheys muuttujan odotusarvon µ estimaattorin ˆµ = x jakaumaa Fˆµ bootstrap menetelmän avulla. Näyttäisikö siltä, että estimaattorin ˆµ = x jakauma olisi normaalisti jakautunut?
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 4 Bootstrap menetelmän avulla voidaan estimoida estimaattorin ˆθ hajontaa (keskivirhettä) se(ˆθ) = σˆθ käyttämällä kaavaa missä ˆθ (b) = 1 B B b=1 ˆθ (b). Myös estimaattorin ˆθ harhan ŝe(ˆθ) = ˆσˆθ = 1 B (ˆθ (b) B 1 ˆθ ) 2, (b) b=1 bias(ˆθ) = E(ˆθ θ) suuruutta voidaan estimoida bootstrap estimaattoreiden avulla: bias(ˆθ) = ˆθ (b) ˆθ. Tehtävä 4. Laske maailma.txt aineiston logaritmoitujen muuttujien log(vaentiheys) ja log(elinaika) välisen korrelaatiokertoimen harhalle (bias) ja keskivirheelle (standard error) bootstrap estimaatit.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 5 Bootstrap menetelmän avulla voidaan muodostaa luottamusväliestimaatteja tuntemattomalle parametrille θ tilanteessa, missä estimaattorin ˆθ jakauma Fˆθ on tuntematon. Tuntemattoman parametrin θ 100(1 α)% luottamusväli saadaan muodostettua kaavalla (ˆθ ˆt 1 α/2ˆσˆθ, ˆθ ˆt α/2ˆσˆθ), missä ˆσˆθ, ˆt 1 α/2 ja ˆt α/2 on muodostettu bootstrap menetelmän avulla. Algoritmi 4. 1. Muodostetaan estimaatti ˆθ. 2. Jokaisella bootstrap estimointikerralla b = 1, 2,..., B: (a) Generoidaan otos x (b) = (x 1, x 2,..., x n) poimimalla n:n alkion otos havaitusta otoksesta x = (x 1, x 2,..., x n ) palauttamalla. (b) Lasketaan bootstrap estimaatti ˆθ b = ˆθ (b) (x (b) ) bootstrap otoksesta x (b). (c) Generoidaan C kappaletta bootstrap otoksia x (c) otoksia bootstrap otoksesta x (b). (d) Lasketaan bootstrap estimaatti ŝeˆθ (b) (e) Lasketaan bootstrap estimaatti ˆt b = ˆθ (b) ˆθ ŝeˆθ (b) poimimalla n:n alkion bootstrap otoksien x (c) avulla. bootstrap otoksesta x (b). 3. Etsitään otoskvantiilit ˆt 1 α/2 ja ˆt α/2 arvojen ˆt 1,..., ˆt B perusteella. 4. Lasketaan estimaatti ˆσˆθ bootstrap estimaattien ˆθ b avulla. 5. Muodostetaan luottamusväli (ˆθ ˆt 1 α/2ˆσˆθ, ˆθ ˆt α/2ˆσˆθ). Tehtävä 5. Laske maailma.txt aineiston elinaika muuttujan odotusarvolle µ 95% luottamusväliestimaatti bootstrap menetelmällä.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 6 Jackknife estimoinnista Jackknife menetelmässä havaitusta otoksesta x = (x 1, x 2,..., x n ) muodostetaan uusia otoksia x (i) = (x 1, x 2,..., x i 1, x i+1,..., x n ) jättämällä vuoron perään i:nes havainto pois alkuperäisestä otoksesta. Jackknife menetelmän avulla voidaan estimoida jonkin tuntemattoman parametrin θ estimaattorin ˆθ hajontaa (keskivirhettä) se(ˆθ) = σˆθ ja harhaa bias(ˆθ) = E(ˆθ θ). Algoritmi 5. 1. Jokaisella jackknife estimointikerralla i = 1, 2,..., n: (a) Muodostetaan jackknife otos x (i) = (x 1,..., x i 1, x i+1,..., x n ) havaitusta otoksesta x 1, x 2,..., x n jättämällä i:nes havainto pois havaitusta otoksesta. (b) Lasketaan jackknife estimaatti ˆθ (i) jackknife otoksesta x (i). 2. Estimoidaan jackknife estimaattien ˆθ (1),..., ˆθ (n) avulla esim. estimaattorin ˆθ hajontaa σˆθ tai harhaa bias(ˆθ). Hajonnan σˆθ tai harhan bias(ˆθ) estimaatit saadaan muodostettua jackknifen tilanteessa käyttäen kaavoja ŝe(ˆθ) = ˆσˆθ = n 1 n (ˆθ(i) n ˆθ ) 2, ( ) ja missä ˆθ ( ) = 1 n n i=1 ˆθ (i). i=1 bias(ˆθ) = (n 1)(ˆθ ( ) ˆθ), Tehtävä 6. Laske maailma.txt aineiston logaritmoitujen muuttujien log(vaentiheys) ja log(elinaika) välisen korrelaatiokertoimen harhalle (bias) ja keskivirheelle (standard error) estimaatit jackknife menetelmällä.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 7 Permutaatiotestaus kahden muuttujan tilanteessa Tarkastellaan ensiksi permutaatiotestauksen perusteita esimerkkien kautta. Tarkastellaan permutaatiotestausta kahden otoksen tilanteessa. Olkoon x = (x 1, x 2,..., x n ) ja y = (y 1, y 2,..., y m ) satunnaisotoksia jakaumista X F X ja Y F Y, ja olkoon z = (x, y) yhdistetty (järjestetty) otos. Permutaatiotestausta käytetään usein epäparametrisissa päättelytilanteissa, missä ongelmana on testata jakaumien samankaltaisuutta hypoteeseillä H 0 : F X = F Y H a : F X F Y. Olkoon otosfunktio g = g(x, y) = g(z) valittu siksi testisuureksi, jonka saamien arvojen perusteella hypoteesin testauksen päättely tehdään. Tällöin permutaatiotestaus muodostetaan seuraavan algoritmin perusteella: Algoritmi 6. 1. Lasketaan testisuureen g = g(x, y ) = g(z ) arvo havaitusta aineistosta z = (x, y ). 2. Jokaisella permutaatio-otos kerralla b = 1, 2,..., B: (a) Generoidaan permutaatio-otos z b = (x b, y b ) sekoittamalla havaitun otoksen alkioiden järjestys. (b) Lasketaan permutaatio-otoksesta z b otossuureen arvo g b = g(x b, y b ) = g(z b ). 3. Lasketaan empiirinen p-arvo: (a) Yksisuuntaisen (suurempi kuin) testisuureen empiirinen p-arvo ˆp lasketaan kaavalla ˆp = 1 + #{g b g } = 1 + B b=1 I(g b g ). B + 1 B + 1 (b) Kaksisuuntaisen testisuureen empiirinen p-arvo ˆp lasketaan kaavalla ô == 1 + #{g b g } B + 1 = 1 + B b=1 I(g b g ), B + 1 ja jos ô < 0.5, niin ˆp = 2ô, ja jos ô > 0.5, niin ˆp = 2(1 ô). 4. Hylätään H 0 jos valitulla merkitsevyystasolla α on voimassa ˆp α.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 8 Tehtävä 7. Tarkastellaan maailma.txt aineistoa. 1. Muodosta tal.koko muuttujasta uusi 2-luokkainen muuttuja ftal.koko niin, että alkuperäiset arvot (2.18,4.83] kuuluvat yhteen luokkaan ja arvot (4.83,7.48] toiseen luokkaan. 2. Testaa onko alle15v muuttujan jakaumat samat ftal.koko muuttujan luokkien suhteen. Permutaatiotestausta voidaan käyttää epäparametriseen kahden otoksen riippumattomuuden testaamiseen: H 0 : F XY = F X F Y H a : F XY F X F Y. Tehtävä 8. Testaa ovatko maailma.txt aineiston logaritmoidut muuttujat log(vaentiheys) ja log(elinaika) keskenään riippumattomia.
syksy 2011 Monte Carlo menetelmät TILTA4 - Jarkko Isotalo 9 Tehtävä 9. Luokittele vaentiheys ja elinaika muuttujat 3-luokkaisiksi luokittelumuuttujiksi ja testaa ovatko luokitellut muuttujat riippumattomia toisistaan.