Lukumäärä- ja prosenttiyhteenvedot Pythonilla

Lukumäärä- ja prosenttiyhteenvedot tulevat kyseeseen seuraavissa tapauksissa:

  • Kategorisen muuttujan yhteenvetotaulukko (frekvenssitaulukko).
  • Määrällisen muuttujan luokiteltu jakauma taulukkona tai histogrammina.
  • Dummy-muuttujien yhteenveto. Dummy-muuttujaksi kutsutaan muuttujaa, joka saa arvokseen joko 0 (joskus tämän sijasta käytetään tyhjää) tai 1. Esimerkiksi kyselytutkimuksessa monivalintakysymys, jonka vaihtoehdoista vastaaja saa valita useammankin kuin yhden, koodataan dummy-muuttujiksi: Jokainen kysymyksen vaihtoehto on muuttuja, joka saa arvokseen 1, jos vastaaja on sen valinnut. Muussa tapauksessa arvo on 0 tai tyhjä.
  • Kategoristen muuttujien välisen riippuvuuden tarkastelu ristiintaulukoimalla.

Eri tapauksissa laskenta menee eri tavoilla. Seuraavaan olen koonnut mielestäni parhaat käytänteet.

Frekvenssitaulukko

Datassa kategoristen muuttujien arvot ovat yleensä lukuja. Lukujen tekstimuotoiset vastineet määrittelen listoina. Listan voin helposti sijoittaa taulukon indeksin arvoksi.

Frekvenssitaulukon lasken pandas-kirjaston crosstab-funktiolla.

lkm1

Voin visualisoida lukumääriä tai prosentteja vaaka- tai pystypylväskaaviona. Yhteensä-rivin tietoja en esitä pylväänä. Jos esitän kaaviossa prosentteja, niin näytän n-arvon (lukumäärä, josta prosentit on laskettu).

Tarkemmat yksityiskohdat selviävät esimerkistä.

Luokiteltu jakauma

Määrällisen muuttujan jakaumaan tutustun luokitellun jakauman avulla.

Pythonilla on helppo kokeilla erilaisia luokkien lukumääriä tai luokkarajoja tilanteeseen sopivan luokittelun löytämiseksi. Olen tottunut käyttämään luokitteluun kahta menetelmää:

  • Pandas kirjaston cut-funktiolla voin lisätä luokat alkuperäiseen dataan ja laatia sen jälkeen frekvenssitaulukon crosstab-funktiolla.
  • Mieluummin laadin histogrammin suoraan määrällisestä datasta hist-kaaviolajia käyttäen.

lkm2

Tarkemmat yksityiskohdat selviävät esimerkistä.

Dummy-muuttujien yhteenveto

Yhteenvetoon mukaan otettavat muuttujat määrittelen listana. Tämän jälkeen lasken listan mukaisista muuttujista lukumäärät:

  • Jos dummy-muuttujan arvoina on ykkösiä (ja nollia tai tyhjiä) niin käytän sum-funktiota.
  • Jos dummy-muuttujan arvoina on joitain lukuja ja tyhjiä niin käytän count-funktiota (laskee lukujen lukumäärän).

Huomaa, että sum- ja count-funktion antama tulos täytyy muuntaa dataframeksi to_frame-funktiolla.

lkm3

Tärkeää: Prosentit lasken kaikista vastaajista (=koko otoksesta).

Tarkemmat yksityiskohdat selviävät esimerkistä.

Ristiintaulukointi

Kahden kategorisen muuttujan välinen riippuvuus selviää ristiintaulukoimalla. Laadin ristiintaulukoinnin crosstab-funktiolla.

Tärkeää: Jos selittävän muuttujan arvot ovat sarakkeissa, niin käytän prosentteja sarakkeen kokonaissummasta (columns). Jos selittävän muuttujan arvot ovat riveillä, niin käytän prosentteja rivin kokonaissummasta (index).

lkm4

Jos otoksesta lasketussa ristiintaulukoinnissa on havaittavaa riippuvuutta, niin voin tarkistaa khiin neliö -testillä, onko riippuvuus tilastollisesti merkitsevää?

Tarkemmat yksityiskohdat selviävät esimerkistä.