The Ultimate Guide to Data Cleaning

Puuttuvat arvot

Puuttuvat arvot ovat väistämättömiä, joten jäämme miettimään, mitä tehdä, kun kohtaamme niitä. Puuttuvien tietojen huomiotta jättäminen on sama kuin kaivaisi reikiä veneeseen; se uppoaa.

Puuttuvia tietoja voidaan käsitellä kolmella tai ehkä useammalla tavalla.

– Yksi. Pudota.

Jos sarakkeessa puuttuvia arvoja esiintyy harvoin ja sattumanvaraisesti, helpoin ja eteenpäin menevin ratkaisu on pudottaa pois havainnot (rivit), joissa on puuttuvia arvoja.

Jos suurin osa sarakkeen arvoista puuttuu ja ne esiintyvät sattumanvaraisesti, tyypillinen päätös on pudottaa pois koko sarake.

Tämä on erityisen hyödyllistä tilastollista analyysia tehtäessä, koska puuttuvien arvojen täyttäminen voi antaa odottamattomia tai vääristyneitä tuloksien tuloksia.

– Kaksi. Impute.

Se tarkoittaa puuttuvan arvon laskemista muiden havaintojen perusteella. Siihen on olemassa melko paljon menetelmiä.

– Ensimmäinen on tilastollisten arvojen, kuten keskiarvon, mediaanin, käyttäminen. Mikään näistä ei kuitenkaan takaa vääristymätöntä dataa, varsinkaan jos puuttuvia arvoja on paljon.

Keskiarvo on käyttökelpoisin silloin, kun alkuperäinen data ei ole vinoutunut, kun taas mediaani on kestävämpi, se ei ole herkkä poikkeaville arvoille ja siksi sitä käytetään silloin, kun data on vinoutunut.

Normaalisti jakaantuneessa datassa saadaan kaikki ne arvot, jotka ovat kahden keskihajonnan sisällä keskiarvosta. Seuraavaksi täytetään puuttuvat arvot generoimalla satunnaislukuja välillä (mean — 2 * std) & (mean + 2 * std)

– Toiseksi. Käyttämällä lineaarista regressiota. Olemassa olevien tietojen perusteella voidaan laskea parhaiten sopiva viiva kahden muuttujan välille, esimerkiksi talon hinta vs. m²:n koko.

On syytä mainita, että lineaariset regressiomallit ovat herkkiä poikkeaville arvoille.

– Kolmanneksi. Hot-deck: Arvojen kopiointi muista samankaltaisista tietueista. Tästä on hyötyä vain, jos käytettävissä on riittävästi dataa. Ja sitä voidaan soveltaa numeerisiin ja kategorisiin tietoihin.

Voidaan käyttää satunnaista lähestymistapaa, jossa puuttuva arvo täytetään satunnaisella arvolla. Kun tätä lähestymistapaa viedään askeleen pidemmälle, voidaan ensin jakaa aineisto kahteen ryhmään (strata) jonkin ominaisuuden, esimerkiksi sukupuolen, perusteella ja sitten täyttää puuttuvat arvot eri sukupuolten osalta erikseen satunnaisesti.

Sekventiaalisessa hot-deck-imputoinnissa puuttuvat arvot sisältävä sarake lajitellaan apumuuttujan (-muuttujien) mukaan siten, että tietueet, joilla on samanlaiset apumuuttujat, esiintyvät peräkkäin. Seuraavaksi kukin puuttuva arvo täytetään ensimmäisen seuraavan käytettävissä olevan tietueen arvolla.

Kiinnostavampaa on se, että voidaan hyödyntää myös 𝑘 lähimmän naapurin imputointia, joka luokittelee samankaltaiset tietueet ja laittaa ne yhteen. Tällöin puuttuva arvo täytetään etsimällä ensin ne 𝑘 tietueet, jotka ovat lähimpänä tietuetta, josta puuttuvat arvot puuttuvat. Seuraavaksi valitaan arvo 𝑘 lähimmistä naapureista (tai lasketaan niistä). Laskennassa voidaan käyttää tilastollisia menetelmiä, kuten keskiarvoa (kuten edellä käsiteltiin).

– Kolme. Liputus.

Jotkut väittävät, että puuttuvien arvojen täyttäminen johtaa informaation menetykseen riippumatta siitä, mitä imputaatiomenetelmää käytimme.

Se johtuu siitä, että sen sanominen, että tieto puuttuu, on jo itsessään informatiivista, ja algoritmin pitäisi tietää siitä. Muuten vain vahvistamme mallia, joka on jo olemassa muiden piirteiden avulla.

Tämä on erityisen tärkeää silloin, kun puuttuvat tiedot eivät tapahdu satunnaisesti. Otetaan esimerkiksi suoritettu kyselytutkimus, jossa suurin osa tiettyä rotua edustavista ihmisistä kieltäytyy vastaamasta tiettyyn kysymykseen.

Puuttuvat numeeriset tiedot voidaan täyttää vaikkapa 0:lla, mutta nämä nollat on jätettävä huomioimatta, kun lasketaan mitä tahansa tilastollista arvoa tai piirretään jakaumaa.

Vaikka kategoriset tiedot voidaan täyttää vaikkapa sanalla ”puuttuu”: Uusi luokka, joka kertoo, että tämä tieto puuttuu.

– Ota huomioon …

Puuttuvat arvot eivät ole sama asia kuin oletusarvot. Esimerkiksi nolla voidaan tulkita joko puuttuvaksi tai oletusarvoksi, mutta ei molemmiksi.

Puuttuvat arvot eivät ole ”tuntemattomia”. Suoritettua tutkimusta, jossa jotkut ihmiset eivät muistaneet, onko heitä kiusattu koulussa vai ei, pitäisi käsitellä ja merkitä tuntemattomaksi eikä puuttuvaksi.

Joka kerta, kun pudotamme tai imputoimme arvoja, menetämme tietoa. Merkitseminen saattaa siis tulla avuksi.

Outliers

Ne ovat arvoja, jotka poikkeavat merkittävästi kaikista muista havainnoista. Mikä tahansa data-arvo, joka sijaitsee yli (1,5 * IQR) päässä Q1- ja Q3-kvartiileista, katsotaan outlieriksi.

Outlierit ovat syyttömiä, kunnes toisin todistetaan. Tästä huolimatta niitä ei pidä poistaa, ellei siihen ole hyvää syytä.

Voidaan esimerkiksi huomata joitakin outoja, epäilyttäviä arvoja, jotka ovat epätodennäköisiä, ja päättää siksi poistaa ne. Tosin ne kannattaa tutkia ennen poistamista.

On myös syytä mainita, että jotkut mallit, kuten lineaarinen regressio, ovat hyvin herkkiä poikkeaville arvoille. Toisin sanoen outlierit saattavat heittää mallin pois sieltä, missä suurin osa datasta sijaitsee.

In-record & cross-datasets errors

Nämä virheet johtuvat siitä, että samalla rivillä tai tietokokonaisuuksien välillä on kaksi tai useampia arvoja, jotka ovat ristiriidassa keskenään.

Jos meillä on esimerkiksi tietokokonaisuus kaupunkien elinkustannuksista. Summa-sarakkeen on vastattava vuokran, kuljetuksen ja ruuan summaa.

city rent transportation food total
libson 500 20 40 560
paris 750 40 60 850

Samoin lapsi ei voi olla naimisissa. Palkansaajan palkka ei voi olla pienempi kuin lasketut verot.

Sama ajatus pätee myös eri tietokokonaisuuksissa oleviin toisiinsa liittyviin tietoihin.

Tarkistaminen

Kun se on tehty, on tarkistettava oikeellisuus tarkastelemalla tiedot uudelleen ja varmistamalla, että säännöt ja rajoitteet todella pitävät paikkansa.

Puuttuvien tietojen täyttämisen jälkeen ne saattavat esimerkiksi rikkoa mitä tahansa sääntöä ja rajoitteita.

Tällöin saatetaan joutua tekemään joitakin manuaalisia korjauksia, jos se ei muuten ole mahdollista.

Raportointi

Raportointi siitä, miten kunnossa tiedot ovat, on yhtä tärkeää kuin puhdistaminen.

Kuten edellä mainittiin, ohjelmistopaketit tai kirjastot voivat tuottaa raportteja tehdyistä muutoksista, mitä sääntöjä rikottiin ja kuinka monta kertaa.

Rikkomusten kirjaamisen lisäksi tulisi miettiä myös syitä, miksi virheet syntyivät. Miksi ne ylipäätään tapahtuivat?”

Loppusanat …

Jos pääsit näin pitkälle, olen iloinen, että jaksoit loppuun asti. Mutta, Mikään mainituista ei ole arvokasta ilman laatukulttuurin omaksumista.

Ei ole väliä kuinka vankka ja vahva validointi- ja puhdistusprosessi on, siitä kärsitään jatkossakin, kun uutta dataa tulee.

Parempi varautua tautia vastaan sen sijaan, että käytettäisiin aikaa ja vaivaa sen korjaamiseen.

Nämä kysymykset auttavat arvioimaan ja parantamaan datan laatua:

Miten dataa kerätään ja millaisissa olosuhteissa? Ympäristöllä, jossa tiedot on kerätty, on merkitystä. Ympäristö sisältää muun muassa sijainnin, ajankohdan, sääolosuhteet jne.

Kyselemällä koehenkilöiltä heidän mielipidettään jostakin asiasta, kun he ovat matkalla töihin, ei ole sama asia kuin kun he ovat kotona. Tutkimukseen osallistuvat potilaat, joilla on vaikeuksia käyttää tablettia kyselylomakkeeseen vastaamiseen, saattavat vääristää tuloksia.

Mitä tiedot edustavat? Sisältääkö se kaikki? Vain kaupungin asukkaat? Vai kenties vain ne, jotka päättivät vastata, koska heillä oli vahva mielipide aiheesta.

Mitä menetelmiä on käytetty tietojen puhdistamiseen ja miksi? Eri menetelmät voivat olla parempia eri tilanteissa tai eri tietotyyppien kanssa.

Sijoitatko aikaa ja rahaa prosessin parantamiseen? Ihmisiin ja prosessiin investoiminen on yhtä tärkeää kuin teknologiaan investoiminen.

Vastaa

Sähköpostiosoitettasi ei julkaista.