ReplicaX työkalu avointen datakopioiden luomiseen Juha Karvanen ReplicaX on R-koodina toteutettu menetelmä avoimien datakopioiden tuottamiseen terveystiedosta ja muusta datasta, jota ei sellaisenaan voi julkaista. Marraskuu 2013
Johdanto Ihmisten terveydentilaan liittyviä tutkimusainestojen nykyistä laajempi hyödyntäminen edellyttää aineistojen julkaisemista tavalla, joka ei vaaranna tutkimukseen osallistuneiden tietosuojaa. Tietosuojaan ja aineiston hyödyntämiseen liittyvät kysymykset voidaan ratkaista, mikäli käytössä on menetelmä korkeatasoisen kopion luomiseen alkuperäisestä datasta. Tällaisiin datakopioihin kohdistuu kaksi keskeistä vaatimusta: 1. Henkilöiden tunnistaminen ei saa olla millään tavalla mahdollista esimerkiksi iän, sukupuolen, ammatin, koulutustason tai muiden vastaavien muuttujien avulla. 2. Ollakseen hyodyllinen, kopion tulee kaikilta tilastollisilta ominaisuuksiltaan mahdollisimman tarkasti vastata alkuperäistä aineistoa. Tämä vaatimus koskee paitsi jokaisen yksittäisen muuttujan reunajakaumaa (keskiarvo, varianssi, jne), myös muuttujien välisiä riippuvuusrakenteita (esim. Korrelaatiokertoimet).
ReplicaX: tekninen toteutus Kilpailutyössä on uusimpaa tilastotieteen tutkimusta hyödyntäen kehitetty yleiskäyttöinen menetelmä datakopioiden luomiseen. Menetelmä sekoittaa yksilöitä identifioivat tiedot mutta säilyttää muuttujien reunajakaumat ja riippuvuusrakenteen. Algoritmi hoitaa jatkuvien muuttujien reunajakaumien mallintamisen automaattisesti käyttäen parametristen mallien ja ydinestimoinnin yhdistelmää. Diskreeteille muuttujille käytetään menettelyä, jossa uusia havaintoja generoidaan naapurihavaintojen arvoja sekoittamalla. Menetelmä on toteutettu R-koodina ja se on vapaasti saatavilla osoitteestahttp://www.tilastotiede.fi/replicax/.
Esimerkki: THL:n MONICA-data Esimerkissä vertaillaan alkuperäistä dataa ja sen pohjalta luotua kopiota eri näkökulmista. Esimerkkiaineistona on käytetty Terveyden hyvinvoinnin laitoksen (THL) julkaisemaa otosta (N=11833) MONICA-datasta. Tietoa WHO:n MONICA-projektista:http://www.thl.fi/monica/ Linkki esimerkissä käytettyyn dataan http://www.thl.fi/publications/monica/monograph_cd/data/form04_3.zip Datan dokumentaatio: http://www.thl.fi/publications/monica/monograph_cd/formats/form048.htm Datasta on esimerkkiä varten poimittu muuttujat: MARIT siviilisääty (diskreetti muuttuja) EDLEVEL koulutustaso (diskreetti muuttuja) SCHOOL koulutusvuodet (diskreetti muuttuja) HEIGHT pituus (jatkuva muuttuja) WEIGHT paino (jatkuva muuttuja) WAIST vyötärön ympärys (jatkuva muuttuja) HIP lantion ympärys (jatkuva muuttuja)
Esimerkkirivejä datasta ja kopiosta Alkuperäisessä datassa on 8 henkilöä, joiden siviilisäädyksi on merkitty 5 (muu): MARIT EDLEVEL SCHOOL HEIGHT WEIGHT WAIST HIP 5 3 10 174 67.7 83 93.5 5 3 14 158 62.3 78.5 101.5 5 4 8 171 69 NA NA 5 2 13 168 56.2 NA NA 5 4 8 166 77.7 NA NA 5 2 13 160 60.4 NA NA 5 1 13 174 85.2 97.5 105.5 5 2 12 159 59.6 81.5 98 Vastaavat rivit kopiossa eivät ole tunnistettavissa: MARIT EDLEVEL SCHOOL HEIGHT WEIGHT WAIST HIP 1 3 10 172 72.2 88 95.7 2 3 14 163 66.5 83.5 98.6 3 4 8 170 72.8 NA NA 2 2 13 166 58.4 NA NA 2 4 8 169 76.6 NA NA 2 2 13 160 54.9 NA NA 1 1 13 179 101.7 107.3 116.7 2 2 12 160 56.3 81.3 97.4
Siviilisäädyn ja koulutustason ristiintaulukointi Alkuperäinen data: EDLEVEL MARIT 1 2 3 4 9 1 232 222 419 260 12 2 1445 1416 3333 2938 35 3 131 154 424 237 3 4 39 48 170 241 2 5 1 3 2 2 0 9 1 2 2 3 56 Kopiossa kaikkein pienimmät frekvenssit karsiutuvat pois: EDLEVEL MARIT 1 2 3 4 9 1 236 221 420 263 8 2 1451 1432 3340 2944 27 3 130 155 425 239 0 4 31 39 173 243 0 9 0 0 0 0 56
Paino siviilisäädyn mukaan Alkuperäinen data: Kopio: MARIT N keskiarvo keskivirhe 1 1110 72.6 0.46 2 8956 74.4 0.15 3 914 72.5 0.50 4 483 71.5 0.65 5 8 67.3 3.50 9 25 76.9 2.96 MARIT N keskiarvo keskivirhe 1 1113 72.8 0.45 2 8983 74.5 0.15 3 914 73.0 0.51 4 469 71.9 0.66 9 17 78.9 3.65
Riippuvuusrakenteet säilyvät: Korrelaatiomatriisit Korrelaatiomatriisi, alkuperäinen data: Korrelaatiomatriisi, kopio: HEIGHT WEIGHT WAIST HIP HEIGHT 1.000 0.516 0.310 0.083 WEIGHT 0.516 1.000 0.866 0.755 WAIST 0.310 0.866 1.000 0.719 HIP 0.083 0.755 0.719 1.000 HEIGHT WEIGHT WAIST HIP HEIGHT 1.000 0.514 0.307 0.089 WEIGHT 0.514 1.000 0.865 0.755 WAIST 0.307 0.865 1.000 0.716 HIP 0.089 0.755 0.716 1.000
Yhteenveto MONICA-esimerkistä Esimerkkidatan tapauksessa menetelmä vaikuttaa toimivan hyvin: yksilöt eivät ole tunnistettavissa mutta reunajakaumat ja riippuvuusrakenteet vastaavat alkuperäistä dataa. Menetelmä on helppokäyttöinen, koska käyttäjän ei tarvitse tehdä mallinuspäätöksiä. Kyseessä on kuitenkin asiantuntijan työkalu: käyttäjän tulee aina huolellisesti tarkastaa kopiodatan laatu ennen sen julkaisemista.
Jatkokehitys Laajempi testaus erilaisilla datoilla. Koodin kehittäminen ja dokumentoinnin parantaminen. Tavoitteena on julkaista koodi R-pakettina CRAN-arkistossa. Projektia on myös mahdollista jatkaa tieteellisen julkaisun suuntaan. Tällöin keskeistä on menetelmän täsmällinen kuvaaminen ja vertailut R-paketeissa sdcmicro ja simpopulation esitettyjen menetelmien kanssa.