Myös Tampereen katutilasta enin osa on varattu autoille

Rengaskuvio katutilan jakautumisesta Tampereella, koko kaupunki:
Autoilu 69 %, pysäköinti 4 %, joukkoliikenne 3 %, Jalankulku 8 %, pyöräily 2 % sekä yhdistetty pyöräily ja jalankulku 14 %.

Tampereen katutilasta arviolta 73 % on varattu käytännössä autoille. Kävelylle ja pyöräilylle on osoitettu katutilasta selvästi pienempi siivu, 24 %. Joukkoliikenteelle jää vaivaiset 3 % ratikan liikennöinnin aloitettuakin. Helsinkiin verrattuna yhdistetyn pyöräilyn ja jalankulun osuus on selvästi isompi.

Tämä kirjoitus on jatkoa Helsingistä tehdylle analyysille ja pohjautuu samaan metodologiaan sekä vertauskelpoisiin aineistoihin. Taustaoletuksia ja metodologiaa on kuvailtu tarkemmin Helsinkiä koskevassa artikkelissa. Kuvat on alun perin julkaissut Oras Tynkkynen toukokuussa 2023 silloisessa Twitterissä sekä blogikirjoituksena Jaakko Stenhällin kanssa otsikolla “Katutilaa autoilta ihmiselle”.

Tampereen keskustassa kulkumuotojen välset suhteet jakautuvat hieman tasaisemmin. Autoilulle on varattu 58 %, kun kävelylle ja pyöräilylle jää 38 %. Joukkoliikenteen osuus on 4 %.

Rengaskuvio katutilan jakautumisesta Tampereella, vain keskusta: 
Autoilu 48 %, pysäköinti 10 %, joukkoliikenne 4 %, Jalankulku 22 %, pyöräily 4 % sekä yhdistetty pyöräily ja jalankulku 12 %.

Myös Tampereella autoilu vie hyvin suuren osan katutilasta, jos vertailee autolla tehtyjen matkojen määrään. Koska autolla tehdään pidempiä matkoja kuin jalan tai pyörällä, ero henkilökilometreissä on pienempi.

Prosenttipylväskuvio katutilan jakautumisesta Tampereella verrattuna kulkumuotojakaumaan (matkojen lukumääräinen osuus). Katutila, koko kaupunki:
Autoilu 69 %, pysäköinti 4 %, joukkoliikenne 3 %, Jalankulku 8 %, pyöräily 2 % sekä yhdistetty pyöräily ja jalankulku 14 %.
Katutila, vain keskusta: 
Autoilu 48 %, pysäköinti 10 %, joukkoliikenne 4 %, Jalankulku 22 %, pyöräily 4 % sekä yhdistetty pyöräily ja jalankulku 12 %.
Kulkumuotojakauma, koko Tampere: 
Autoilu 43 %, joukkoliikenne 13 %, jalankulku 34 %, pyöräily 8 %, muu 2 %.
Kulkumuotojakauman tiedot perustuu Henkilöliikennetutkimukseen 2021 ja sisältävät siten tamperelaisten tekemät matkat myös kaupungin ulkopuolella.

Kuten Helsinginkin tapauksessa, nämä luvut ovat vain arvioita, sillä suoraa valmista dataa ei ole saatavilla. Niistä saa kuitenkin hyvän suuntaa antavan käsityksen siitä, kuinka eri kulkumuotoja on priorisoitu kaupunkitilassa. Ajoratoja käyttää toki myös julkinen liikenne sekä pienemmässä määrin polkupyörät.

Helsingin kantakaupungin katutilasta ylivoimaisesti suurin osa on varattu autoilijoiden käyttöön

Rengaskuvio katutilan jakautumisesta Helsingin kantakaupungissa. Jakauma on: Autoilu 54 %, pysäköinti 9 %, pyöräily 4 %, yhdistetty pyöräily ja jalankulku 6 %, jalankulku 22 %, joukkoliikenne 5% (arvio).
Rengaskuvio katutilan jakautumisesta Helsingissä, koko kaupunki. Jakauma on: Autoilu 72 %, pysäköinti yli 3 %, pyöräily 2 %, yhdistetty pyöräily ja jalankulku 8 %,  jalankulku 7 %, joukkoliikenne 2 %.

Koko Helsingin katutilasta (ylempi grafiikka) noin 75 % ja kantakaupungin katutilasta noin 63 % on varattu autoille (alempi grafiikka). Luvut eivät ole täysin tarkkoja, koska joukkoliikenteen käytössä olevan osuuden suuruudesta ei ole käytettävissä tietoja. Autoilun osuus on siis se osa katualueesta (ei ajoradasta), joka ei ole varattu muuhun käyttöön. Katualueeseen kuuluu ajoradan lisäksi esim. kaistojen välinen alue moottoriliikenneteillä.

Rengaskuvio katutilan jakautumisesta Helsingin kantakaupungissa. Jakauma on: Autoilu 54 %, pysäköinti 9 %, pyöräily 4 %, yhdistetty pyöräily ja jalankulku 6 %,  jalankulku 22 %, joukkoliikenne 5% (arvio).

Tämä teksti on hiukan muokattu ja korjattu versio entisessä Twitterissä toukokuussa 2023 julkaistusta langasta. Helsinkiä koskevan analyysin rinnalle tehtiin myös vastaava Tampereen katutilasta.

Ylipäänsä katutilan määrittely rekisteriaineistojen perusteella on yllättävän vaikeaa! Olemme käyttäneet seuraavaa rajausta: mukana ovat kaikki katualueeksi yleisten alueiden rekisterissä määritellyt alueet sekä kevyen liikenteen väylistä ne, jotka eivät kulje puistoissa. Joukkoliikenteen käytössä olevaksi on arvioitu HKL:n, HSL:n tai Liikenneviraston huoltovastuulla olevat katuosat, joka sisältää mm. muusta liikenteestä erotellut raitiovaunukiskot ja raitiovaunupysäkit. Tämän lisäksi on arvioitu bussikaistojen ja -pysäkkien viemä tila.

Bussikaistojen kokonaismääräksi Helsingissä on Jere Laineen kandidaatintyöstä saatu 44 km, mutta ei ole tietoa, miten tämä jakautuu kantakaupungin ja esikaupunkien välillä. Olemme olettaneet, että bussikaistoista 1/3 on kantakaupungissa ja että niiden leveys on keskimäärin 3,5 metriä. Bussipysäkkien kokonaismäärä ja jakautuminen on tiedossa, mutta niiden viemä tarkka pinta-ala ei tiedetä. Tässä on arvioitu, että kukin bussipysäkki vie keskimäärin 50 m² ajoradalta ja 10 m² jalkakäytävältä. Pysäköintipaikkojen viemän tilan osuus on tässä arviossa koko kaupungin osalta liian pieni, sillä käytettävissä olevassa aineistossa ei ole mukana asukaspysäköintivyöhykkeen ulkopuolella sijaitsevia kadunvarsipaikkoja.

Autoilulle varattu osuus katutilasta on sekä kantakaupungissa että koko Helsingissä selvästi suurempi kuin autoilun osuus kaupungissa tehdyistä matkoista, kuten alla olevasta grafiikasta ilmenee.

Varattu osuus katutilasta verrattuna matkojen kulkutapajakaumaan, prosenttipylväskuvio.

Koko Helsinki:
Katutila 72 % autoilu plus 3 % pysäköinti – kulkutapaosuus 21 %. Joukkoliikenne 2 %, kulkutapaosuus 24 %. Jalankulku 12 % plus 8 % yhdistettyä pyöräilyn kanssa, kulkutapaosuus 47 %. Pyöräily 2 % ja kulkutapaosuus 10 %. Muu kulkutapa 1 %.

Vain kantakaupunki:
Katutila 54 % autoilu plus 9 % pysäköinti – kulkutapaosuus 12 %. Joukkoliikenne 5 %, kulkutapaosuus 25 %. Jalankulku 22 % plus 6 % yhdistettyä pyöräilyn kanssa, kulkutapaosuus 53 %. Pyöräily 4 % ja kulkutapaosuus 10 %. Muu kulkutapa 1 %.
Aineistona yllä olevassa grafiikassa on Helsinkiläisten liikkumistottumukset 2022 -selvitys, jossa ovat mukana helsinkiläisten Helsingin sisällä tekemät matkat.
Varattu osuus katutilasta verrattuna matkasuoritteeseen, prosenttipylväskuvio.

Koko Helsinki:
Katutila 72 % autoilu plus 3 % pysäköinti – matkasuorite 63 %. Joukkoliikenne 2 %, suorite 21 %. Jalankulku 12 % plus 8 % yhdistettyä pyöräilyn kanssa, suorite 7 %. Pyöräily 2 % ja suorite 3 %. Muu suorite 6 %.

Vain kantakaupunki:
Katutila 54 % autoilu plus 9 % pysäköinti – kulkutapaosuus 12 %. Joukkoliikenne 5 %, kulkutapaosuus 25 %. Jalankulku 22 % plus 6 % yhdistettyä pyöräilyn kanssa, kulkutapaosuus 53 %. Pyöräily 4 % ja kulkutapaosuus 10 %. Muu kulkutapa 1 %.

Suhteutettuna matkasuoritteeseen eli kullakin kulkuneuvolla tehtyjen matkojen pituuteen jakauma vaikuttaa tasaisemmalta. On kuitenkin huomioitava, että tässä käytetyssä aineistossa (Henkilöliikennetutkimus 2021) matkat on eroteltu vain vastaajan kotipaikan mukaan.

Toisin sanoen mukana ovat kaikki helsinkiläisten tai kantakaupungissa asuvien tekemät matkat, tapahtuivat ne missä päin Suomea hyvänsä. Mukana ovat myös pitkät lomamatkat, mikä näkyy esim. kategorian ”muu” (joka sisältää moottoripyörät ja matkailuautot) suuruutena. Kuten Henkilöliikennetutkimuksesta selviää, suomalaiset tekevätkin varsin paljon pitkiä matkoja autolla. Koko maassa 20–150 km mittaisilla matkoilla henkilöauto on täysin dominova kulkutapa, osuus on 93 % – 94 %. Aineistoa matkasuoritteen jakautumisesta kulkutavoittain Helsingin sisällä ei valitettavasti ole saatavilla.

Post scriptum

Muutama sananen siitä, miksi tämä laskelma antaa varsin erilaisen lopputuloksen kuin aiemmin tekemässämme grafiikassa katutilan jakautumisesta Helsingin kantakaupungissa. Uuden laskelman tekemiseen ryhdyttiin, jotta saataisiin lukuja, jotka ovat vertailukelpoisia muihin Suomen kaupunkeihin. Sitä tehdessä pyrittiin huomioimaan Twitterissä laskelmaa kohtaan esitetty kritiikki ja huomioimaan aiempaa paremmin joukkoliikenteen osuus.

Laskelma tehtiin alusta asti uusiksi ja siinä hyödynnettiin dataa aiempaa hienojakoisemmin. Alueiden pinta-alat laskettiin yhteen jo paikkatieto-ohjelmistossa kuin aikaisemmassa versiossa lopullinen yhteenlasku tapahtui Python-koodin avulla. Alkuperäinen laskelma ei ole säilynyt aivan kokonaisuudessaan, mutta säilyneiden tietojen perusteella siinä vaikuttaa olevan kaksi keskeistä virhettä.

  1. Tekemämme Python-koodi laski kevyen liikenteen väylistä virheellisesti yhteen vain puhtaanapitovyöhyke 1:een (ydinkeskusta ja turistikohteet) kuuluvat alueet. Tämä alue on pienempi kuin koko kantakaupunki, joten kevyen liikenteen väylien pinta-ala jää näin liian pieneksi
  2. Kadunvarsipysäköinnin vaatima tila perustuu ilmeisesti arvioon, joka on selvästi liian suuri. (Tämä laskelma ei valitettavasti ole säilynyt.) Tämä virhe ei vaikuta autoille varatun tilan suuruuteen, vaan ainoastaan siihen miten se jakautuu ajoradan ja pysäköinnin kesken.

Laskelmien tuloksissa on muitakin pieniä eroja, jotka selittyvät lähinnä datan hienojakoisempien tietojen tarkemmalla hyödyntämisellä ja todellisilla muutoksilla katutilassa (esim. uudet pyöräväylät), mutta nämä kaksi virhettä selittävät suurimman osan eroista.

”Maailman parhaimmat laulut” Observablella

Ovatko ”maailman parhaimmat laulut” suomalaisten mielestä yhä samoja kuin 27 vuotta sitten? Kokeilin visualisointia Observablella ja testasin samalla ”fuzzy match” -toimintoa Pandas-kirjastossa. Aineistona oli Helsingin Sanomien koostama asiantuntijaraadin lista vuodelta 2022 sekä Wikipediassa tallennettu Radio Novan kuulijakyselynä rakennettu listaus vuodelta 1995:

https://observablehq.com/@hjhilden/suosituimmat-laulut-1995-vastaan-2022

Visualisointi: miten kappaleiden sijoitukset eroavat listauksien välillä. Ero sijan 1995 ja 2022 välillä. Huippusijoitusten kappaleet siirtyneet aiemmille sijoille 
uudemmassa listauksessa.
Visualisointi rakennettu D3-kirjastolla Observablessa

Mikä ihmeen Observable?

Observable on Mike Bostockin ja Melody Meckfesselin perustama yritys ja verkkopohjainen ympäristö, jossa luodaan vuorovaikutteisia dokumentteja eli ”muistioita”, englanniksi notebookeja. Bostock tunnetaan suositun D3-JavaScript-kirjaston kehittäjänä, ja D3 onkin keskeinen osa Observablea. Muistio tai notebook on siis tiedosto, joka koostuu soluista. Solut ovat yksikköjä, pieniä laatikoita joihin voi kirjoittaa JavaScript-koodia, HTML:ää sekä tekstiä (jota voi muotoilla Markdown-merkintäkielellä). Ajatus on, että ympäristö auttaa yhdistämään analyysin, visualisoinnin ja julkaisemisen saumattomaksi ja helposti jaettavaksi kokonaisuudeksi.

Perinteisemmän ohjelmointiin verrattuna muistiossa sekä koodi että se mitä sen ajaminen tuottaa näkyy siis samassa dokumentissa. Observablessa jokaisen solun tulos näytetään sen yläpuolella:

esimerkki Observable-ympäristöstä

Observablella on olemassa runsaasti tutoriaaleja sekä muistioina että videomuodossa ja niihin tutustuminen lienee paras tapa ymmärtää miten ympäristö toimii: https://observablehq.com/tutorials.

Ympäristön dokumentaatio on tietenkin muistion muodossa https://observablehq.com/@observablehq/documentation

Observableen on myös rakennettu näppärä Observable Plot, joka helpottaa visualisointien tekoa.

Observable muistuttaa Pythonille kehitettyä, suosittua Jupyter-ympäristöä. Jupyterin käyttäjille onkin luotu erityiset työkirjat tutustumista varten: https://observablehq.com/collection/@observablehq/observable-for-jupyter-users

Keskeisimmät erot Jupyteriin ovat siinä, että Observablen solut ajetaan uudestaan automaattisesti, eikä solujen järjestyksellä ole väliä. Tämän takia funktiomäärittelyt voidaan sijoittaa ”piiloon” muistion loppuun, eikä tarvitse muistaa ajaa soluja uudelleen oikeassa järjestyksessä jos tekee muutoksia. Koodi ajetaan siis samalla tavalla kuin funktiot taulukkolaskentaohjemissa kuten Excelissä. Toimintatapaa selitetään tarkemmin tässä muistiossa.

Jokainen solu palauttaa myös ainoastaan yhden arvon – arvot solujen sisällä eivät siis lähtökohtaisesti ole muiden solujen käytettävissä, vaan ne pitää erikseen palauttaa. Toisin kuin Jupyterissa, Observablella ei ole erillistä ydintä eli kerneliä: koodi ajetaan selaimessa. Oletusarvoisesti Observablen muistiot siis asuvat tiedostoina Observablen palvelimella – mutta selaimesi ajaa niissä olevan koodin. Koodia voi myös tuoda vaivattomasti muistiosta eli notebookista toiseen ja erilaisia JavaScript-kirjastoja on helppo käyttää. Muistioita voi myös ”forkata”, eli kopioida uusiksi versioiksi.

Tieteentekijöille Observablen käyttökelpoisuutta voi rajoittaa se seikka, että esimerkiksi kaikille R– tai Python-kirjastoille ei välttämättä ole olemassa suoria tai ainakaan yhtä vakiintuneita ja dokumentoituneita JavaScript-pohjaisia vaihtoehtoja. Sen sijaan se voi olla oiva väline esimerkiksi prototyyppien luomiselle verkkokehittäjille ja datajournalisteille sekä algoritmisen taiteen tekijöille. Se voi myös olla varteenotettava julkaisualusta datajournalistisille projekteille.

Itse tein tähän raakadata datan käsittelyn pääosin Pandas-kirjaston avulla Jupyter-ympäristössä, sillä se on minulle vielä toistaiseksi tutumpi kuin Observable. ”Fuzzy matching” eli sumea vertailu oli helppoa käyttäen difflib-kirjastoa. Ohje löytyi luonnollisestikin StackOverflowista. Kahden DataFramen yhdistäminen indexin perusteella difflibin avulla näyttää tältä:

df2.index = df2.index.map(lambda x: difflib.get_close_matches(x, df1.index)[0])
df1.join(df2)

Tätä ohjetta muokkaamalla sain yhdistettyä kahden eri listan kappaleet nimen perusteella eri vuosilta siitä huolimatta, että niissä oli vaihtelevat kirjoitusasut. En säätänyt algoritmin tarkkuutta, joten se yhdisti aika reippaasti ihmisen näkökulmasta: Abban Don’t Shut Me Down yhdistyi esimerkiksi Pandoran kappaleeseen Don’t You Know. Koska lista tässä tapauksessa oli maltillisen kokoinen, niin oli helpompi siivota nämä käsin pois kuin säätää asetuksia (ja mahdollisesti jättää jokin kappale pois vahingossa!).

Observablen käyttö on tätä kirjoittaessa yksittäisille käyttäjille maksuton, ryhmälisenssit myydään kuukausihinnalla.

Näiden vaalien tuloksen ennustaminen on tavallistakin vaikeampaa

Sunnuntaina järjestettävien eduskuntavaalien tulosta on totuttuun tapaan spekuloitu ennakkoon ahkerasti. Ennustaminen on aina vaikeaa, erityisesti tulevaisuuden, mutta tällä kertaa vaalituloksen ennustaminen on tavallistakin hankalampaa.

Puolueiden kannatusta mittaavien mielipidekyselyiden tulokset antavat toki jonkinlaista osviittaa mahdollisesta vaalituloksesta. Yhdistämällä viimeisimpien Ylen, Helsingin Sanomien ja Alma Median gallupien tulokset saadaan seuraavanlainen tulos:


KannatusVirhemarginaali
SDP19,4 %±1,3 %
kokoomus16,8 %±1,2 %
PS14,9 %±1,2 %
keskusta14,5 %±1,2 %
vihreät12,5 %±1,1 %
vasemmistoliitto9,1 %±0,9 %
RKP4,4 %±0,7 %
KD4,2 %±0,7 %
siniset1,3 %±0,4 %
muut2,9 %±0,6 %

(Mielipidemittausten tulosten yhdistämistä ja puoluekohtaisen virhemarginaalin laskemista käsitellään lähemmin tässä artikkelissa.)

Vaikka tulokseen liittyy epävarmuustekijöitä, uskon, että lopullinen valtakunnallinen tulos on luultavasti melko lähellä tätä.

Eduskunnan paikkajakoa ei kuitenkaan ratkaise puolueiden valtakunnallinen äänisaalis, vaan se, kuinka paljon ääniä niille kussakin vaalipiirissä kertyy. Tämän ennustaminen on aina vaikeaa, mutta erityisen hankalaa näissä vaaleissa, sillä mukana on suuri määrä uusia tai sitten viime vaalien kannatustaan kasvattaneita pienpuolueita, joiden vaikutusta on hyvin vaikea arvioida. Erityisen hankalaksi asian tekee se, että moni nykyinen kansanedustaja, mukana muutamia viime vaalien ääniharaviakin, on näissä vaaleissa valtakunnallisesti alle parin prosentin kannatuksen kellottavan puolueen ehdokkaana.

Yle ja Vihreä Lanka ovat molemmat laatineet omat ennusteensa paikkajaosta, mutta kumpikaan niistä ei ole metodologisesti tyydyttävä. Yle ei avaa lainkaan esimerkiksi sitä, millä perusteella kannatus on jyvitetty vaalipiireittäin ja miten puoluekentän muutokset on ennusteessa huomioitu – vai onko mitenkään. Vihreä Lanka on kiitettävän avoin käyttämästään mallista, mutta kuvauksen perusteella mallissa on ilmeisiä katvealueita.

Päätin yrittää itse kokeilla mallinnusta, joka huomioisi puolueiden valtakunnallisten kannatuslukujen lisäksi Turun Sanomien, Satakunnan Kansan, Kymen Sanomien, Karjalaisen, Savon Sanomien, Kalevan ja Lapin Kansan teettämät vaalipiirikohtaiset mielipidemittaukset ja vaaliliitot, ja ottaisi jollain tapaa huomioon myös kansanedustajien puolueenvaihdokset vaalikauden aikana.

Tehtävä osoittautui hankalaksi. Suurin ongelma on datan puute. Vaalipiirikohtaisia mielipidemittauksia ei ole tehty kaikissa vaalipiireissä, ja useimmissa paikallisissa gallupeissa otoskoko on joko naurettavan pieni tai sitä ei ole edes ilmoitettu.

Valtakunnallisen kannatuksen jyvittämisessä vaalipiireihin hyödynsin tietoa kansanedustajien vuoden 2015 vaaleissa saamista henkilökohtaisista äänimääristä, niin että esimerkiksi Harry Harkimon Uudellamaalla saama äänimäärä vähennettiin Uudenmaan kokoomuksen potista ja lisättiin Liike Nytille. Samoin toimittiin sinisen eduskuntaryhmän kansanedustajien kohdalla, joiden saamat äänet vähennettiin perussuomalaisten potista. Paavo Väyrynen on sen sijaan hankalampi tapaus, sillä hän on vaihtanut paitsi puoluetta, myös vaalipiiriä. Tein lopulta Lapin Kansan mielipidemittauksen perusteella – se ei ennusta järin suurta kannatusta eduskunnan ulkopuolisille puolueille Lapin vaalipiirissä – sellaisen melko mielivaltaisen päätöksen, että jyvitin vain kolmasosan Väyrysen saamista äänistä Seitsemän Tähden Liikkeelle.

Hyvin äkkiä huomasin, että kun dataa on vähän, erilaisia painokertoimia ja oletuksia tarvitaan paljon, eikä niille löydy kovin hyviä perusteluita, vaan ne jäävät tyypillisesti aika mielivaltaisiksi. Miten esimerkiksi pitäisi painottaa vaalipiirikohtaista mielipidemittauksen tulosta suhteessa valtakunnalliseen? (Pelkkiin vaalipiirikohtaisiin kyselyihin en halunnut luottaa silloinkaan kun sellainen oli saatavilla, sillä niiden otoskoot olivat yleensä varsin pieniä, ja monet on julkaistu ennen perussuomalaisten viimeaikaista gallupnousua.) Päädyin käyttämään paikallisen gallupin vastaajaluvun parina lukua, joka on muodostettu jakamalla valtakunnallisten gallupien yhteenlaskettu vastaajamäärä (3 554) kahdella sadalla ja kertomalla tämä sitten vaalipiirin kansanedustajapaikkojen määrällä. Esimerkiksi Oulun vaalipiirissä painotin siis Kalevan gallupia, jossa kantansa ilmaisi 368 vastaajaa suhdeluvulla 368 / 320, jossa 320 on saatu laskukaavalla 3 554 ÷ 200 × 18.

Näillä oletuksilla paikkaennuste on seuraava:

SDP45(+10)
kokoomus35(–3)
PS32(+15)
keskusta32(–16)
vihreät24(+9)
vasemmistoliitto16(+4)
RKP (sis. Ahvenanmaan edustajan)9(–1)
KD6(+1)
Liike Nyt1(–1)
siniset0(–17)
muut0(–1)

(Suluissa muutos suhteessa tämänhetkisen eduskunnan kokoonpanoon.)

Kuinka varma tämä tulos on? Hyvin epävarma.

Kokeilin simuloida vaalitulosta siten, että kunkin puolueen äänimäärä vaihtelisi vaihtelisi hieman lasketun keskiennusteen ympärillä. Tässä hankalaksi kysymykseksi muodostui se, mikä olisi oikea tapa määritellä satunnaismuuttujan hajonta, kun data ei ole yhteismitallista eikä kaikilta osin kovin laadukasta. Menemättä yksityiskohtiin, kokeilin runsaasti kaikenlaisia vaihtoehtoja saavuttamatta kovin tyydyttävää tulosta, tai kykenemättä esittämään hyviä perusteluita sille, miksi juuri tämä tai tuo painotus tai kerroin olisi sen perustellumpi kuin joku toinen.

Ohessa esimerkki yhden simulaation tuloksista. Tässä ”vaali” siis ajettiin 20 000 kertaa läpi hieman satunnaisesti varioiden kunkin puolueen kussakin vaalipiirissä saamaa äänimäärää:

Kuten kuvasta näkyy, hajonta on useimpien puolueiden osalta kuin haulikolla ammuttu. Kiinnostavasti juuri minkään puolueen kohdalla aiemmin laskettu todennäköisin arvo ei ole hajonnan keskellä, eivätkä useimmat käppyrät muutenkaan vaikuta normaalisti jakautuneilta. Kyse voi toki olla virheestä hätäisesti kyhätyssä koodissani – tämä ei yllättäisi minua lainkaan –, mutta datan lähempi tarkastelu viittaa toiseenkin mahdolliseen selitykseen: todella monessa vaalipiirissä viimeisestä 1–2 paikasta tullaan käytössä olevien lukujen valossa käymään todella kova kisa.

Oman analyysini pohjalta uskallan veikata sunnuntain vaalituloksesta vain, että se tulee sisältämään yllätyksiä. Millaisia, se jää nähtäväksi. Odotus ei onneksi ole enää pitkä.

Artikkelia muokattu 13.4.2019 klo 12:54: Korjattu ennustettujen kansanedustajapaikkojen määrää koskevassa taulukossa virheelliset muutos nykyiseen eduskunnan kokoonpanon -tiedot.

Vihreiden hyvä gallup-kannatus ei välttämättä käänny eduskuntapaikoiksi

Eilisen iso uutinen Suomen politiikassa oli Ylen julkaisema kannatusmittaus, joka nosti vihreät jo maan toiseksi suosituimmaksi puolueeksi huimalla 17,6 prosentin kannatuksella. On monia hyviä syitä olettaa, että puolueen suosio tulee seuraavassa mittauksessa olemaan tätä pienempi, eikä mielipidemittaus kerro välttämättä paljoakaan lopullisesta vaalituloksesta – ei vähiten siksi, että seuraaviin eduskuntavaaleihin on aikaa vielä kaksi vuotta (mikäli sitä ennen ei jouduta ennenaikaisiin vaaleihin) . Tulos on silti niin poikkeuksellinen, että on herkullista leikitellä hetki mitä jos -tyyppisellä pohdiskelulla ja kysyä, miten näiden lukujen mukainen vaalitulos kääntyisi eduskuntapaikoiksi.

Missään maailman maassa puolueiden parlamenttiin saamien paikkojen määrä ei perustu täysin suoraan saatujen äänten määrään – siis niin, että vaikkapa 10 prosenttia äänistä kerännyt puolue saisi aina 10 prosenttia parlamenttipaikoista. Tähän on erilaisia syitä. Joissain maissa suurimpien puolueiden asemaa on tietoisesti pönkitetty äänikynnyksen tai vaalien voittajalle jaettavien ”bonuspaikkojen” muodossa. Myös halu turvata maan eri osien tasapuolinen edustus parlamentissa vaalipiirien avulla aiheuttaa tällaista epäsuhtaa ääni- ja paikkamäärien välille. Mm. angloamerikkalaisissa maissa yleisesti käytetty enemmistövaalitapa voi johtaa todella räikeisiinkin poikkeamiin suhteellisuudessa. Kansainvälisessä vertailussa Suomen vaalijärjestelmä on toteutuneiden vaalitulosten valossa kohtuullisen edustava, mutta esimerkiksi Tanskassa, Israelissa ja Uudessa-Seelannissa ääni- ja paikkamäärien suhteellisuus toteutuu vielä paremmin.

Laskin, miten Ylen mielipidemittauksen mukainen vaalitulos kääntyisi eduskuntapaikoiksi, jos kunkin puolueen saamat äänet jakautuisivat eri vaalipiireihin samassa suhteessa kuin vuoden 2015 eduskuntavaaleissa. Tämä tarkoittaisi esimerkiksi, että vihreiden koko maassa saamista äänistä noin 27 % annettaisiin Helsingissä, kun taas RKP:n äänistä 35 % tulisi Vaasan vaalipiiristä. Lisäksi oletan yksinkertaisuuden vuoksi, että yksikään tällä hetkellä eduskunnan ulkopuolella oleva puolue ei saisi haalittua riittävästi ääniä yhdenkään ehdokkaan läpimenoon.

Lopputulos ei näytä optimaaliselta vihreiden kannalta, vaikka toki näillä luvuilla puolue olisi vaalien suurin voittaja. 17,6 % äänistä toisi vihreille vain 16,5 % paikoista, ja maan toiseksi suosituin puolue jäisi kansanedustajapaikoissa vasta neljännelle sijalle johtuen kannatuksen epäedullisesta jakautumisesta.

Vaalipiirijako näyttää näillä luvuilla suosivan erityisesti keskustaa ja SDP:tä, joista kumpikin haalisi selvästi ääniosuuttaan suuremman määrän kansanedustajapaikkoja. Myös kokoomuksen paikkamäärä on suhteellisesti suurempi kuin ääniosuus. Kaikki pienemmät puolueet saisivat taas hieman ääniosuuttaan pienemmän osuuden paikoista. (RKP:n hieman tutkimuksessa mitattua ääniosuutta suurempi edustajanpaikkojen määrä johtuu siitä, että Ahvenanmaa eli ole mukana mielipidemittauksessa. Maakunnan edustaja istuu kuitenkin perinteisesti aina RKP:n eduskuntaryhmässä, eli puolue saa tavallaan yhden lisäpaikan.)

Suurten ja pienten puolueiden suhteellinen menestys selittyy pitkälti suomalaisissa vaaleissa käytetyllä laskentatavalla, joka normaalisti suosii suuria puolueita – vihreiden suurella kannatuksella kellottama matala edustajanpaikkojen määrä on tässä mielessä hyvin poikkeuksellinen.

Alla vielä vaalipiirikohtaiset tulokset. Vaikka on epätodennäköistä, että lopullinen vaalitulos olisi kovin täsmällisesti lähellä Ylen eilisen mielipidemittauksen tulosta, on taulukosta silti helppo huomata, että viherjytkyn materialisoituminen vaatisi vihreiden tuloksen parantumista varsinkin suurten kaupunkien ulkopuolella.

 

Lisäys 18.8. klo 14:51: Sosiaalisen median puolella esitettiin hyvä kysymys: miltä tulos näyttäisi, jos eri puolueiden saamien äänten alueellinen jakautuminen muistuttaisi pikemminkin kuntavaalien 2017 kuin eduskuntavaalien 2015 tulosta. Alla oleva taulukko näyttää paikkaennusteen kunnallisvaalien tuloksen pohjalta. 

Tulos näyttää vihreiden kannalta paremmalta kuin ylempää löytyvä, eduskuntavaalien tulosta pohjana käyttävä ennuste. Keskusta ja SDP pärjäävät edelleen suhteellisesti paremmin, mutta asetelma on vihreille hieman vähemmän epäedullinen, ja näillä luvuilla vihreät nousisi eduskunnan kolmanneksi suurimmaksi puolueeksi. Voidaan siis todeta, että vihreät on jo kevään kuntavaaleissa onnistunut levittämään kannatustaan maantieteellisesti laajemmalle alueelle viime eduskuntavaaleihin nähden. Jos suunta jatkuu samana, tämä lupaa hyvää vihreiden paikkamäärälle seuraavissa vaaleissa.

Muidenkin puolueiden paikkamäärissä on pieniä muutoksia. Erityisen mielenkiintoinen yksityiskohta on, että kristillisdemokraattien paikkamäärä putoaisi puoleen eduskuntavaaleihin pohjautuvaan skenaarioon verrattuna. 

Some thoughts on interactivity and storytelling

Two somewhat intertwining themes in many of the presentations at this year’s Malofiej conference (and last year as well) were what role interactivity and storytelling should play in data visualization. I think these two issues are related, and both of them are extremely important for our profession.

New York Times’ Archie Tse memorably told the conference (in 2016) that “readers just want to scroll” and that “if you make the reader click or do anything other than scroll, something spectacular has to happen.” That is, most of the visitors on a newspaper’s site don’t deeply interact with the graphics on the site, but instead prefer to just scroll and treat the interactive visualizations as static pictures.

Gregor Aisch published today a blog post titled “In defense of interactive graphics” which adds more shades of gray. I found this a particularly salient point: “– – you should not hide important content behind interactions. If some information is crucial, don’t make the user click or hover to see it – –. But not everything is crucial and 15% of readers isn’t nobody.” Another good point he makes is that letting the readers explore the data in detail helps spot mistakes and correct them.

Not all users and all use cases are as important! A sizeable part of my own work consists of doing interactive visualizations for public sector clients. Although the broadly defined target audience might be “anyone interested in the issue” very often there is a much, much smaller core audience, sometimes only a handful of people, whose needs are very different from a random visitor. These might be e.g. MPs who write legislation on the issue my client has a stake in, or experts in the subject matter working in a different arm of government. Such users are often much more invested in the issue to begin with, more knowledgeable on the topic, and more willing to spend time exploring a dataset. These past two days we heard of many examples of projects which may not have been huge hits with readers, but which helped journalists working within the newsroom to find stories. All these are examples of cases where you shouldn’t decide whether the graphic was succesful based only on how the 85% or 99% or users interacted (or didn’t) with it, but also take into account that some users are more valuable to you than others.

This brings us to the issue of storytelling. Jon Schwabish’s presentation discussed the topic at length yesterday, and in response to Jon’s thoughts Chad Skelton made the point in his blog that a literary story is different from a news story. I think this is true and important, but I would still  argue a news story is called a “story” for a reason.

A story is defined in the dictionary as “an account of imaginary or real people and events told for entertainment”, “a piece of gossip; a rumour” – or even “a false statement; a lie”. (In a Finnish newsroom, likewise, a news story is called juttu; literally an anecdote, a yarn, even a joke.) The common theme here is that “a story” includes at least a somewhat subjective point of view, and a narrative arc, with which the writer or speaker ties a bunch of disparate facts together as a coherent explanation of a part of the world, whether or not that explanation is true. (Nathaniel Lash also touched on this issue in his presentation today.) A table of numbers is not a story (though a data journalist might see a story in that table), nor should an entry in a dictionary or encyclopedia be.

I found Anna Flagg’s presentation today extremely relevant for very many reasons, but one issue she discussed I want to specifically mention here was the question of perceived bias in journalism and how to combat that perception. She mentioned a survey according to which in the U.S., a whopping 71% of Trump supporters and even 50% of Clinton supporters wanted the media to report just the facts without including any interpretation their own. As professionals, we understand that, if taken literally, such reporting would probably not be possible and certainly not very useful. Nevertheless, these numbers are indicative of mistrust in the capacity and willingness of the media to report the facts fairly.

I would argue that part of the problem here is that we think of what we are doing as storytelling. A story is a structure which helps to connect disparate pieces of information (factual or not) into a coherent whole, to better understand and remember it. But what if those pieces, even if true, do not objectively fit into a coherent whole? How do we guard against the temptation of seeing a story where there isn’t one in reality? The journalistic code of ethics helps in weeding out intentionally misleading and plain sloppy reporting. I’m not sure it helps as much when the problem is journalists seducing themselves with their own stories.

This brings us back to the issue of interactivity. A non-interactive story is just that, a story – a necessarily somewhat subjective narrative arc tying up the facts into a coherent whole. Such a story can be informative and useful, but it is not transparent.

To add transparency to a data-driven story, add interactivity. Instead of showing just the portion of the data the journalist thinks is most relevant for the readers, let them explore the rest as well – if they so prefer. It seems most readers won’t take up the offer; despite saying they want just the facts without interpretation, based on New York Times’ experience most people seem to prefer the journalist’s interpretation of the data to exploring it on their own. But the minority who is interested in and willing to explore the data exists. We should cater to them as well as the majority.

Not only to give them an engaging experience and a better understanding of the world, but also to keep ourselves honest.

Oikean Median puoluekannatusanalyysi on huonosti tehtyä ja laiskaa datajournalismia

Arvokonservatiiviseksi vaihtoehtomediaksi itsensä määrittelevä Oikea Media julkaisi lauantaina Marko Hamilon kirjoittaman puolueiden kannatusta ja vieraskielisten osuutta Helsingin eri alueilla vertailevan datajournalismijutun otsikolla ”Maahanmuuton kannattajat asuvat kaukana monikulttuurisesta arjesta”.

Analyysin keskeinen sisältö tiivistetään Hamilon jutussa näin:

– – Sdp ja Perussuomalaiset saavat paljon ääniä monikulttuurisilta alueilta, sen sijaan Kokoomuksen ja Vihreiden kannatus on heikompaa siellä missä monikulttuurisuus on voimakasta. Vasemmistoliiton kannatus ei riipu äänestysalueen monikulttuurisuuden asteesta.

On ilahduttavaa, että konservatiivitkin yrittävät vaihteeksi käydä yhteiskunnallista keskustelua asia-argumentein. Valitettavasti artikkeli perustuu virheellisesti käsiteltyyn dataan eikä edes tämä virheellinen aineisto lähemmin tarkasteltuna täysin tue Hamilon sanallisesti esittämää tulkintaa.

Käytetty aineisto soveltuu tarkoitukseen huonosti ja käytetty menetelmä on kuvattu puutteellisesti

Puolueiden kannatuksen ja ”monikulttuurisuuden”, joka Hamilon artikkelissa määritellään vieraiden kielten puhujien osuudeksi, vertailu on lähtökohtaisesti hankalaa, sillä näistä teemoista saatavilla olevat tilastot käyttävät erilaista aluejakoa. Äänestysalueita ei käytetä väestötilastojen aluejakona, joten vieraiden kielten puhujien osuus on saatavilla vain niiden kanssa yhteensopimattomalla aluejaolla, esimerkiksi kaupunginosittain (Helsingin seudun aluesarjat -sivustolta) tai postinumeroalueittain (Tilastokeskuksen PAAVO-tietokannasta). Hamilo ilmoittaa käyttäneensä lähteenä aluesarjojen aiheistoa.

Alla oleva Helsingin kartta kuvaa sitä, miksi tämä on ongelma. Äänestysalueiden rajat eivät vastaa yksi yhteen kaupunginosien (tai postinumeroalueiden) rajoja. Kartassa mustalla näkyvät ne rajat, jotka ovat sekä kaupunginosien että äänestysalueiden rajoja, vihreällä vuoden 2012 kuntavaalien äänestysalueiden rajat ja oranssilla kaupunginosien rajat. Lisäksi vihreänharmaalla on merkitty ne äänestysalueiden rajat, jotka muuttuivat vuonna 2013.

(Kuva aukeaa klikkaamalla suuremmaksi.)

Sellaisissa tapauksissa, joissa kaikki kaupunginosaan kuuluvat äänestysalueet mahtuvat kokonaan sen rajojen sisäpuolelle ongelmaa ei synny, koska tällöin tulokset voidaan laskea yhteen ja muodostaa näin kaupunginosakohtaiset luvut. Ongelmia tuottavat sellaiset äänestysalueet, jotka ulottuvat kahden tai useamman kaupunginosan puolelle.

Yllä olevalla kartalla oranssina näkyvät kaupunginosien rajat ovat sellaisia kohtia, joissa äänestysalue ulottuu useamman kaupunginosan alueelle. Esimerkiksi äänestysalue 003A Kaartinkaupunki pitää sisällään Kaartinkaupungin kaupunginosan lisäksi myös Kaivopuiston sekä ison siivun Ullanlinnasta.

Hamilo ei selitä miten hän on ratkaissut aluejakojen yhteensovittamiseen liittyvät ongelmat. Asian selvittämistä hankaloittaa, että hän käyttää kaupunginosista pääosin muita kuin niiden virallisia nimiä. Joissain kohdin tämä on sisällöllisesti perusteltua: harva esimerkiksi tietää, että Itäkeskus ja Myllypuro kuuluvat molemmat virallisesti Vartiokylä-nimiseen kaupunginosaan (numero 45), joten nimitys Itäkeskus–Myllypuro on virallista nimeä havainnollisempi. Monet Hamilon valitsemat nimitykset ovat kuitenkin harhaanjohtavia: hän kutsuu esimerkiksi Länsisataman kaupunginosaa (20) Ruoholahdeksi, vaikka kaupunginosaan kuuluvat Ruoholahden lisäksi myös Jätkäsaari, Lapinlahti ja Hernesaari.

Hamilo vaikuttaa myös jättäneen viisi kaupunginosaa kokonaan pois analyysistään perustelematta ratkaisua mitenkään. Puuttuvat kaupunginosat ovat Kaivopuisto (09), Laakso (18), Vanhakaupunki (27), Viikki (36) ja Vartiosaari (48). Varsinkin n. 15 000 asukkaan Viikin jättäminen pois on erikoinen veto, joka kaipaisi jonkin perustelun tuekseen. Uskoisin tämän liittyvän jollain tavalla äänestysalueiden ja kaupunginosien yhteensovitusongelmaan, mutta kun metodologiaa ei ole tekstissä avattu, asia jää mysteeriksi.

Olen koonnut alla olevaan taulukkoon käsitykseni siitä, mitä virallisen aluejaon kaupunginosaa mikin Hamilon käyttämä nimitys tarkoittaa:

Hamilon käyttämä kaupunginosan nimi kaupunginosan virallinen nimi ja numero asukasluku 1.1.2016
Alppila 12 Alppiharju 11 937
Etu-Töölö 13 Etu-Töölö 14 559
Haaga 29 Haaga 26 771
Hermanni 21 Hermanni 6 325
Herttoniemi-Roihuvuori 43 Herttoniemi 26 216
Itäkeskus-Myllypuro 45 Vartiokylä 33 956
Jakomäki 41 Suurmetsä 16 209
Kaartinkaupunki 03 Kaartinkaupunki 1 050
Kallio 11 Kallio 19 434
Kamppi-Hietalahti 04 Kamppi 11 709
Kannelmäki-Malminkartano 33 Kaarela 27 357
Käpylä 25 Käpylä 8 114
Katajanokka 08 Katajanokka 4 470
Kluuvi 02 Kluuvi 636
Konala 32 Konala 6 197
Kontula-Mellunmäki 47 Mellunkylä 37 600
Koskela 26 Koskela 3 336
Kruununhaka 01 Kruununhaka 7 376
Kulosaari 42 Kulosaari 3 806
Kumpula 24 Kumpula 3 838
Laajasalo 49 Laajasalo 16 630
Lauttasaari 31 Lauttasaari 22 617
Malmi 38 Malmi 24 664
Maunula 28 Oulunkylä 23 333
Meilahti 15 Meilahti 5 091
Munkkiniemi 30 Munkkiniemi 17 629
Pakila 34 Pakila 10 399
Paloheinä 35 Tuomarinkylä 8 982
Pasila 17 Pasila 9 219
Pitäjänmäki 46 Pitäjänmäki 11 726
Pukinmäki 37 Pukinmäki 8 383
Punavuori-Eira 05 Punavuori + 06 Eira 10 163
Ruoholahti 20 Länsisatama 10 350
Ruskeasuo 16 Ruskeasuo 10 373
Santahamina 51 Santahamina 423
Sörnäinen 10 Sörnäinen 9 634
Suomenlinna 52 Suomenlinna 790
Taka-Töölö 14 Taka-Töölö 15 244
Tammisalo 44 Tammisalo 2 247
Tapanila 39 Tapaninkylä 14 159
Tapulikaupunki 40 Suutarila 19 901
Toukola 23 Toukola 8 777
Ullanlinna 07 Ullanlinna 10 629
Vallila 22 Vallila 9 326
Vuosaari 54 Vuosaari 37 834
Östersundom 55 Östersundom +
58 Karhusaari +
59 Ultuna
1 961
puuttuvat kokonaan 09 Kaivopuisto
18 Laakso
27 Vanhakaupunki
36 Viikki
48 Vartiosaari
yht. 17 901

Taulukosta ilmenee eräs muukin käytetyn aluejaon ongelma. Äänestysalueet ovat asukasluvultaan likimain samankokoisia, useimmiten noin 2 000–4 000 henkeä, joten niiden suora vertailu on vielä kohtalaisen mielekästä ilman sen kummempia painokertoimia. Hamilon vertailemien kaupunginosien asukasluvut kuitenkin vaihtelevat 423 asukkaan Santahaminasta 37 800 asukkaan Vuosaareen. On kyseenalaista, millaisia johtopäätöksiä näin erilaisia alueita suoraan vertailemalla voi ylipäänsä tehdä.

Hamilo on päätynyt yhdistämään vuosien 2008, 2011, 2012 ja 2015 vaalien tulokset yhdeksi luvuksi. Niin puolueiden kannatus kuin vieraskielisten määräkin on vaihdellut eri alueilla tällä ajanjaksolla paljon, eikä Hamilo selitä, miten hän on ottanut vaihtelun huomioon. Runsas vieraskielisten määrä vuonna 2015 tuskin on voinut vaikuttaa takautuvasti puolueiden kannatukseen vuonna 2008. (Pieniä lisähankaluuksia saattaa joissain kohdin tuottaa myös, että äänestysalueiden rajoja on muutettu vuosina 2010 ja 2013.)

Minulle jää myös epäselväksi, miten Hamilon ilmoittama vieraskielisten osuus eri kaupunginosissa on laskettu. Se ei aluesarjojen luvuilla nopeasti testailtuna vaikuttaisi olevan ainakaan vaalivuosien painotettu tai painottamaton keskiarvo, minkään yksittäisen vaalivuoden luku eikä myöskään tuorein Aluesarjat-sivustolta löytyvä luku eli tilanne vuoden 2016 alussa.

Jos analyysin olisi tehnyt jokin luotettava, journalistin ohjeisiin sitoutunut media, tai vielä parempaa, yliopistossa tai vaikkapa sektoritutkimuslaitoksessa työskentelevä ammattitutkija, saattaisin ehkä olla valmis uskomaan, että kaikille yllä mainitsemilleni erikoisille ratkaisuille löytyy hyvä perustelu ja ongelmakohdat on pystytty tavalla tai toisella taklaamaan. Hamilon ja Oikean Median uskottavuus ei kuitenkaan ole sillä tasolla, että ilman yksityiskohtaisia perusteluja voisi noin vain olettaa tekijän tietävän mitä tekee – varsinkin kun aineiston lähempi tarkastelu tuntuu pikemminkin lisäävän kysymyksiä kuin vastaavan niihin.

Edes Hamilon käyttämä data ei tue hänen johtopäätöksiään

Kelpuuttakaamme kuitenkin keskustelun vuoksi Hamilon käyttämä data kaikkine epäselvyyksineenkin. Tukeeko käytetty aineisto kirjoittajan sanallista tulkintaa? Hamilo toteaa kuvioiden lukuohjeessa mm. näin:

Jos puolueen kannatus korreloi positiivisesti monikulttuurisuuden kanssa, on trendi nouseva oikealle mentäessä.

Hamilo on siis kiinnostunut siitä, miten puolueen kannataus korreloi ”monikulttuurisuuden” (eli vieraskielisten osuuden kanssa). Tässä kohdin on hyvä muistuttaa siitä, mitä korrelaatio oikeastaan tarkoittaa. Tiivis määritelmä löytyy esimerkiksi Tieto näkyväksi -kirjasta (s. 195):

Korrelaatio eli yhteisvaihtelu on suure, joka kuvaa kahden muuttujan keskinäistä riippuvuussuhdetta. Tiedämme esimerkiksi, että ihmisen tulotasolla ja eliniänodotteella on yhteys toisiinsa: suurituloiset elävät keskimäärin pienituloisia vanhemmiksi. Havainto pätee tilastollisella tasolla, vaikka yksilötasolla tästä esiintyykin runsaasti poikkeuksia.

Voimakas korrelaatio viittaa siihen, että muuttujien välillä on jonkinlainen syy­-yhteys, mutta ei kerro sitä, kumpi muuttujista on syy ja kumpi seuraus tai löytyykö keskinäisen riippuvuuden takaa kenties jokin kolmas selittävä tekijä. Tämä ei käy ilmi pelkästään tilastollisesta analyysistä, vaan syy–seuraussuhteen selvittäminen vaatii syvällisempää tietoa aiheesta.

Korrelaation laskemiseen on useita matemaattisia menetelmiä, joista käytetyin on Pearsonin korrelaatiokerroin eli r. Se voi saada arvoja välillä –1 … 1. Korrelaatio on sitä voimakkaampi, mitä enemmän r:n arvo poikkeaa nollasta. Negatiiviset arvot kuvaavat käänteistä riippuvuussuhdetta, jossa toisen muut­tujan arvo kasvaa toisen pienentyessä.

– –

Tilanteet, joissa r olisi tasan 0, 1 tai –1 ovat varsin harvinaisia. Useimmin korrelaatiokertoimen arvo asettuu jonnekin niiden välimaastoon. Mikä silloin on voimakas tai heikko korrelaatio? Ohessa suuntaa antava jaottelu:

r = 0–0,2 ei korrelaatiota
r = 0,2–0,4 heikko korrelaatio
r = 0,4–0,6 kohtalainen korrelaatio
r = 0,6–0,8 voimakas korrelaatio
r = 0,8–1 erittäin voimakas korrelaatio

Korrelaatio on siis matemaattinen suure, jonka suuruus voidaan visualisoinnista arvioida silmämääräisesti vain karkeasti, mutta jonka laskemiseen on olemassa vakiintunut ja helppo menetelmä.

Jostain syystä Hamilo ei ole laskenut puolueiden kannatuslukujen ja ”monikulttuurisuuden” asteen välisiä korrelaatiokertoimia, vaan nojaa pelkästään laatimiinsa visuaalisiin esityksiin, joita hän tulkitsee lukijalle sanallisesti.

Alla olevaa kuviota tulkitaan mm. näin: ”Vihreiden vankin kannatus löytyy kantasuomalaisten asuttamilta alueilta ja kannatus laskee monikulttuurin lisääntyessä.”

Seuraavaa grafiikkaa kuvaillaan vuorostaan näin: ”Vasemmistoliiton kannatus näyttää olevan tasaista kautta linjan, eikä siis riipu alueen monikulttuurisuusasteesta.”

Minun täytyy sanoa, etten näe kuvioissa Hamilon kuvailemaa eroa. Minun silmiini kumpikaan niistä ei paljasta selkeää yhteyttä puolueen kannatuksen ja ”monikulttuurisuuden” välillä, vaan kaupunginosia kuvaavat pallot ovat kummassakin kuviossa melko lailla hajallaan ympäri koordinaatistoa.

Onneksi asiassa ei tarvitse luottaa pelkkään silmämääriseen arvioon, vaan voimme laskea puolueen kannatuksen ja vieraitten kielten puhujien osuuden korrelaation kullekin puolueelle:

puolue korrelaatio
SDP 0,72
kokoomus −0,55
perussuomalaiset 0,51
vihreät −0,18
vasemmistoliitto 0,15

SDP:n ja monikulttuurisuuden väillä näkyy Hamilon keräämän datan perusteella olevan voimakas (r = 0,72) positiivinen korrelaatio. Myös kokoomuksen ja perussuomalaisten kohdalla korrelaatio on kohtalainen, kuten Hamilo jutussaan kuvaileekin.

Mutta kas vain! Vihreiden ja vasemmistoliiton korrelaatiokertoimet ovat käytännössä samansuuruisia, vaikkakin toki vastakkais­suuntaisia. Toista näistä Hamilo kuvailee siis sanomalla, että ”kannatus laskee monikulttuurin lisääntyessä”, toista taas, ettei kannatus ”riipu alueen monikulttuurisuusasteesta”.

Alle 0,2:n korrelaatiota kuvaillaan yleensä sanoilla ”ei korrelaatiota”. Toisin sanoen, Hamilon väite siitä, että vihreiden kannatus olisi kääntäen verrannollinen ”monikulttuurisuuden” määrään ei kestä lähempää tarkastelua edes hänen omaa dataansa käyttäen. Hamilo on päättänyt analyysinsä tuloksen etukäteen ja näkee kuviossa mitä haluaa, vaikka yksinkertainen tilastollinen analyysi olisi paljastanut, ettei aineisto tue tehtyä johtopäätöstä. Tämä siis sen lisäksi, ettei käytetty aineisto sovi tällaisen analyysin tekemiseen ja sitä on käsitelty virheellisesti ja läpinäkymättömästi.

Näiden puutteiden lisäksi voisin listata vielä lisääkin. Esimerkiksi: Miksi tarkastelu on rajattu vain Helsinkiin? Eikö vähintään muut pk-seudun kunnat ja kenties muutkin suuret kaupunkiseudut olisi syytä ottaa mukaan isomman otoksen ja siten robustimman analyysin aikaansaamiseksi?

Entäpä miksi jutussa ei ole lainkaan käsitelty vaihtoehtoisia selityksiä havaituille puoluekannatuksen alueellisille eroille? Uskaltaisin veikata, että sekä asuinpaikka että puoluekannatus korreloivat voimakkaammin tulotason kanssa kuin puolekannatus alueen vieraskielisten määrän kanssa. Varsinkin kun Hamilon implikoitu väite – että maahanmuuttajien lähellä asuminen lisäisi maahan­muutto­vastaisia asenteita ja siten perussuomalaisten suosiota – on ristiriidassa olemassaolevan tutkimustiedon kanssa, vaadittaisiin vähän kattavampaa vaihtoehtoisten selitysmallien poissulkemista, jotta analyysi olisi uskottava.

Datajournalismin tarkoitus ei ole väännellä ja käännellä aineistoa halutun lopputuloksen saamiseksi. Oikean Median ja Hamilon kannattanee vastaisuudessa jättää tämä laji osaavampien heiniksi.

Olen kerännyt kaikki käytetyt datat yhteen CSV-muotoiseen taulukkoon, jonka halukkaat voivat ladata omien analyysien tekemistä varten.

Are carbohydrates really the culprit behind the obesity epidemic?

Obesity is a global health problem. It is obiviously linked to diet in some way, but the exact nature of this link is the subject of volumes of research, and also of heated exchanges online. One school of thought, occasionally exhibiting quasi-religious tendencies in some of its advocates, claims that the obesity epidemic is mainly caused by our diet being too rich in carbohydrates from cereals and other such sources, as well as vegetable oils. As a solution, they advocate changing to a diet rich in animal fats, meat, eggs and so on.

Inspired by the coverage of a recent piece in The Lancet about rising obesity rates, as well as a somewhat uncritical book review in The Economist I decided to see myself if the publicly available data on obesity and diets could be tortured into confessing something on the issue.

I need to emphasize that this is not a scientific study. Describing the methods used as rigorous would be a stretch, to say the least. A few potential problems with the data and with my handling of it are outlined in the end of this article, and the list is by no means exhaustive. What this is, is a bit of light-weight data journalism that will hopefully inspire discussion and possibly more serious research into the data.

I used this WHO data on obesity (the same used by the Lancet authors), combined with agricultural statistics from FAO to see if the number of overweight and obese people in a country was correlated with the intake of various foods.

To capture the effect of changing diets, I used the data from several different years within a single country as separate data points where historical data was available. If you disagree with this choice, you can switch the view to show only the most recent data.

The end result is below, an interactive scatterplot that shows how the consumption of various foods correlates with the number of overweight and obese people in each country. The idea of the visual presentation is that the reader can look at the full dataset and not need to rely on single numbers such as averages or correlation coefficients.

In light of these numbers, there is no evidence that high cereal consumption is linked with obesity on a country level. If anything, the correlation between the share of overweight adults and cereal consumption is mildly negative (r = –0.18). With starchy roots (such as potato) there is no correlation whatsoever (r = 0.08).

The correlation between vegetable oils and overweight is moderate (r = 0.33), though not much greater than with the consumption of animal fats (r = 0.23). It should be noted, though, that the consumption of animal fats is very small in most non-Western countries, so not very many conclusions can necessarily be drawn from this comparison.

The strongest correlation in the data with the share of overweight adults is with meat consumption (r = 0.5). Not surprisingly, the correlation with sugar and sweeteners is also reasonably strong (r = 0.43).

The correlation with meat consumption and obesity is probably at least partially due to the fact that higher meat consumption is typical of higher living standards overall, which also often means a higher total calorie intake and less physical work. The existence of these types of confounding variables is amply demonstrated by the fact that the correlation of overweight with the consumption of fruits is also moderate (r = 0.32). Practically no one believes eating fruits makes you fat, so the explanation is probably that fruit intake is also simply correlated with higher living standards.

So what’s the take-home messge? I would interpret the data so that no single group of foods is responsible for the obesity epidemic by itself, certainly not cereals. This sort of population-level comparison using somewhat patchy data can hardly settle the matter by itself, but I would still argue that if cereals (and carbohydrates in general) were really so bad, there should be a sliver of the effect visible in the data even on this coarse level. Which there isn’t, as you can see.

The jury is still out on vegetable oils, but if we want to explain away the high correlation of meat consumption with the share of overweight adults, I would argue similar confounding factors are to be found here; the use of vegetable oils in the West has risen with the overall rise of living standards. So if you want to argue that the correlation of obesity with meat intake is spurious, the same should probably said of the clearly weaker correlation with vegetable oils – and vice versa.

The next step would be to compare the calorie intake from different kinds of foods instead of the absolute numbers (kg/capita/year), which could possibly help to overcome the fact that a rise in living standards affects both the total calorie intake and the mix of different types of foods consumed.

Potential sources of error

Apart the whole project being executed within the span of two working days, and by a designer with no scientific training to speak of, there are some specific details in the data and how it was processed that can be sources of error.

FAO’s data shows the “food supply”, that is, the food theoretically available for human consumption, not the actual food intake. Factors such as wastage are not taken into account, and may vary from country to country.

WHO’s data on obesity is collected using methods and samples differing from country to country and may thus not be directly comparable. There were some examples in the data where a change in the numbers was clearly an artifact of the data collection process, not representative of the change in the facts on the ground; for example the share of overweight people dropping from 59.8 to 46.2 percent in a single year in Australia 2000–2001. In such cases the most recent data was assumed to be reliable, and the older data was discarded.

The selection of countries for which the data is available is much better representative of high-income Western countries than world’s other regions, which is bound to effect the overall picture.

Because the number of years for which historical data was available varied greatly between different countries, not all years for which data was available were used. A more balanced subset was instead attempted by picking only some years, far apart enough to exhibit clear changes in dietary patterns. The method used is extremely arbitrary, and probably effects the end result.

The final dataset used for the visualization was created with a custom Python script from messy original data by a non-programmer, a process which is a highly probable source of error. The final data was superficially examined for flaws (and the script corrected several times accordingly), but it has not been rigorously and thoroughly scrutinized in the way required for e.g. scientific publication and thus scripting errors remain a potential source of errors in the data. For those interested in assessing the data quality themselves, the processed data can be downloaded as a tsv file (which is similar to csv, except using tabs instead commas as separators) here.

Eurovaalien kovin kilpailu käytiin vihreiden ja demarien välillä

Eurovaalituloksen ensimmäisissä analyyseissä on noussut vahvasti esiin arvio, että viime eurovaaleihin nähden huonosti menestyneet vihreät menettivät ääniä ennen kaikkea hallitusvastuusta keväällä luopuneelle vasemmistoliitolle. Koko maan lukuja katsoessa tämä on houkutteleva tulkinta, olihan vasemmiston vaalivoitto suunnilleen vihreiden tappion suuruinen.

Ilmeisin selitys ei kuitenkaan välttämättä pidä paikkaansa tarkemman analyysin valossa. Jos vihreät olisivat menettäneet äänestäjiään ennen kaikkea vasemmistoliitolle, tämän pitäisi näkyä äänestysaluekohtaisessa tarkastelussa niin, että vihreiden tappio olisi suurin niillä alueilla joissa vasemmisto on onnistunut houkuttelemaan eniten äänestäjiä. Näin ei kuitenkaan näyttäisi olevan.

Tein vertailun sunnuntain eurovaalien ja vuoden 2012 kunnallisvaalien tuloksesta äänestysalueittain. (Vertailu edellisiin eurovaaleihin ei onnistu yhtä helposti, koska ainakaan vielä tätä kirjoittaessa oikeusministeriö ei ole julkaissut vuoden 2009 äänestysaluekohtaisia tuloksia yhtä kätevässä kootussa koneluettavassa muodossa kuin vuoden 2012 kuntavaaleista ja 2014 eurovaaleista on saatavilla. Tieto on sinänsä saatavilla ja ajan salliessa koitan myöhemmin ottaa sen mukaan analyysiin.) Satunnaisvaihtelun karsimiseksi otin mukaan vain sellaiset äänestysalueet, joilla molemmissa vaaleissa oli annettu yhteensä vähintään tuhat ääntä.

Käytin korrelaation mittarina helposti laskettavaa Pearsonin korrelaatiokerrointa, joka ei välttämättä ole paras mahdollinen tilastollinen analyysimenetelmä, mutta olen sen oheen tehnyt myös interaktiivisen grafiikan, jonka avulla lukija voi itse arvioida, kertovatko pelkät numerot koko totuuden vaalituloksesta.

Grafiikassa voi valita vaaka- ja pystyakselille yhden kahdeksasta isoimmasta eduskuntapuolueesta, muiden puolueiden yhteisen äänisaaliin tai yleisen äänestysaktiivisuuden. Akselien arvot ovat siis muutoksia puolueen kyseisen äänestysalueen äänistä saamassa prosenttiosuudessa vuoden 2012 kuntavaalien ja viime sunnuntain eurovaalien välillä. Renkaiden värit viittaavat vaalipiiriin. Tarkemmat tiedot äänestysalueesta saa viemällä hiiren sitä kuvaavan renkaan päälle.

Jos vaaka- ja pystyakselille valittujen puolueiden vaalituloksen välillä on vahva yhteys niin, että toinen on selvästi vienyt ääniä toiselta, äänestysalueita kuvaavien renkaiden muodostaman pistepilven pitäisi muodostua kuvion lävistäjän ympärille. Vaaka- tai pystysuuntainen pilvi viittaa siihen, ettei yhteyttä puolueiden vaalimenestyksen välillä ole. (Tällaista kuviotyyppiä kutsutaan parvikuvioksi.)

Vihreiden ja vasemmistoliiton vaalimenestystä kuvaava kuvio on voimakkaasti pystysuuntainen, joka tarkoittaa, että vihreiden ääniosuus on vaihdellut paljon edellisistä vaaleista äänestysalueesta riippuen, kun taas vasemmistoliitto on parantanut ääniosuuttaan keskimäärin melko tasaisesti eri puolilla maata. Vahvaa yhteyttä ääniosuuden muutoksien välillä ei näy, korrelaatiokerroin saa arvon r = –0,15 jota ei voi pitää kovin suurena.

Sen sijaan vihreiden ja SDP:n vaalimenestyksen välillä näkyy huomattavasti vahvempi yhteys, r = –0,48. Vihreiden menestys korreloi melko voimakkaasti myös äänestysaktiivisuuden muutoksen kanssa: r = –0,41. Nopea tulkinta on, että SDP on menettänyt äänestäjiään vihreille, mutta vihreät toisesta päästä nukkuvien puolueelle. (Korjaus: Ensimmäisessä versiossa tähän oli lipsahtanut ajatusvirhe. Jos vihreät olisi menettänyt ääniä ennen kaikkea äänestysaktiivisuuden laskun kautta, korrelaatiokertoimen pitäisi olla positiivinen. Nyt tilanne on päin vastoin niin, että vihreät ovat erityisesti menestyneet niillä äänestysalueilla joilla äänestysaktiivisuus laski paljon kuntavaaleihin verrattuna.) Muitakin potentiaalisia selityksiä luvuille varmasti löytyy, mutta selkeästi yhteys vihreiden ja demarien äänimenestyksen välillä on paljon vahvempi kuin vihreiden ja vasemmiston välillä.

Muiden puolueiden vaalituloksen väliltä ei löydy yhtä vahvoja yhteyksiä. Vahvimmat yksittäiset taisteluparit ovat RKP & kokoomus (r = –0,29) ja perussuomalaiset & kokoomus (r = –0,30). Mielenkiintoinen yllätys on myös vasemmistoliiton ja keskustan pieni kilvoittelu (r = –0,23). Vasemmiston tuore meppi Merja Kyllönen menestyi erinomaisesti juuri Pohjois-Suomessa ja kilpaili äänistä varmasti paljon esimerkiksi Paavo Väyrysen kanssa.

Grafiikassa on vielä pieniä teknisiä virheitä, mutta sen muodostama yleiskuva lienee oikea. Eri asia on kuinka pitkälle meneviä johtopäätöksiä lukujen perusteella voi vielä tehdä. Kuntavaalit ja eurovaalit ovat luonteeltaan erilaisia ja äänestäjät saattavat valita puolueensa näissä vaaleissa kovinkin eri perustein. Toimikoon tämä kuitenkin pienenä datajournalistisena keskustelunavauksena vaalituloksen syvempään analyysiin. Lukijoilla on myös epäilemättä paljon kommentteja valittuihin analyysimenetelmiin ja grafiikan toteutukseen, jotka koitan sitten parhaani mukaan huomioida sitten seuraavassa versiossa. :)

Lisäys 28.4.: Työkaluun on nyt lisätty mahdollisuus tarkastella aiemman ääniosuuden absoluuttisen muutoksen (%-yksikköä) myös äänimäärän absoluuttista muutosta (kpl) sekä ääniosuuden suhteellista muutosta (% suhteessa kuntavaaleihin). Absoluuttisten äänimäärien tarkastelu tarjoaa heikompia korrelaatioita kuin aiempi ääniosuuden muutos, mutta edelleen vihreiden vahvin korrelaatio säilyy nimenomaan demareihin ja vihreät on myös ainut puolue jonka kanssa SDP:n tuloksella on selvästi nollasta poikkeava negatiivinen korrelatio, vaikka kerroin onkin pieni (r = –0,26). Vihreiden ja vasemmistoliiton valtakunnallinen korrelaatio on edelleen heikko. Vihreiden vahvimmilla alueilla Helsingissä ja Uudellamaalla vasemmisto näyttäisi ehkä jonkin verran rokottaneen vihreiden tulosta, mutta vihreiden tappio absoluuttisissa äänissä mitattuna on suurempi kuin vasemmiston voitto.

(Huomautettakoon että absoluuttisen äänimäärien vertaaminen äänestysaktiivisuuteen – joka tässä on annettujen äänten määrän prosentuaalinen lasku kuntavaaleista, ei muutos prosenttiyksikköinä – ei anna järkeviä tuloksia, koska äänestysaktiivisuuden ja isojen puolueiden absoluuttisen äänimäärän korrelaatio on suuri ja pienten puolueiden pieni johtuen ihan siitä miten korrelaatio lasketaan.) Itse asiassa näin ei ole, vaan absoluuttisten äänimäärien vertailu äänestysaktiivisuuteen paljastaa että vihreät ja RKP kärsivät vähiten laskeneesta äänestysaktiivisuudesta, kun taas muiden puolueiden tulos korreloi positiivisesti äänestysaktiivisuuden muutoksen kanssa.

Kuntavaaleissa oli vain häviäjiä

Kuntavaalien vaalistudiota katsellessa vaikutti siltä, että liki jokaisen puolueen puheenjohtaja oli sitä mieltä, että juuri hänen puolueensa selviytyi näistä vaaleista voittajana: suurin ääniosuus, eniten valtuutettuja, pienin pudotus ääniosuudessa, liikkuvaan junaan hypänneeltä uudelta puheenjohtajalta huima tulos… Käytännön politiikan teon kannalta valtuustopaikat ratkaisevat ja siinä valossa moni näistä selityksistä voi olla järkeenkäypä. Jos kuitenkin katsotaan eri puolueiden kansalaisilta saamaa mandaattia, voi todeta, ettei näissä vaaleissa ollut kuin häviäjiä.

Vaalien äänestysprosentti, 58,2 %, on aivan surkea. Puolueet paukuttelevat nyt henkseleitään kun ovat saaneet ison siivun pienestä kakusta. Mutta kun katsotaan kuinka moni äänestäjä antoi kullekin puolueelle äänensä, lopputulos on että mikään, siis mikään puolue ei onnistunut keräämään lisää äänestäjiä verrattuna sekä edellisiin kuntavaaleihin 2008 että viimeisimpiin vaaleihin, jotka olivat siis vuoden 2011 eduskuntavaalit. (Presidentinvaaleja en pidä vertailukelpoisena koska niissä puoluetaustan rooli on vähäisempi.) Perussuomalaiset paransivat kyllä äänisaalistaan viime kuntavaaleihin verrattuna, mutta eduskuntavaaleihin verrattuna puolueen äänestäjien määrä on lähes puolittunut.

Oheiseen taulukkoon ja sen lukujen pohjalta laadittuun grafiikkaan on listattu nämä madonluvut. (Luvut on painotettu kussakin vaalissa äänioikeutettujen määrän mukaan, eli tarkalleen ottaen ilmoitettu muutos on puolueen saamassa osuudessa kaikkien äänioikeutettujen äänistä, ei absoluuttisissa äänimäärissä.)

muutos 2008– muutos 2011–
Kokoomus –11,4 % –12,1 %
SDP –12,5 % –16,1 %
Perussuomalaiset +58,7 % –47,0 %
Keskusta –11,8 % –3,0 %
Vihreät –9,4 % –3,7 %
Vasemmistoliitto –13,4 % –19,4 %
RKP –4,7 % –9,6 %
Kristillisdemokraatit –15,2 % –24,1 %
Suomen Työväenpuolue –27,5 % –72,8 %
Itsenäisyyspuolue –13,8 % –60,8 %
Köyhien Asialla –47,8 % –58,8 %
Piraattipuolue –61,8 %
Vapauspuolue –99,7 %
Muutos 2011 –83,8 %
Suomen Kommunistinen Puolue –22,1 % +17,1 %
Kommunistinen Työväenpuolue –35,5 % –56,7 %
Muut ryhmät –37,4 % +83,5 %

Ainoat puolueet, joiden saama äänimäärä on laskenut alle kymmenyksellä molemmista vertailuvaaleista ovat vihreät ja rkp ja nekin vain juuri ja juuri. Eipä ole hurraamista.

Kyllä poliitikoilla on tässä iso peiliin katsomisen paikka. Koko demokraattisen järjestelmämme legitimiteetti on koetuksella, jos tällainen kehitys jatkuu.

______________________________

Lisäys 29.10.2012 

Tässä vielä painottamattomat luvut, eli siis muutokset puolueiden saamien äänten kappalemäärissä. Yleiskuva säilyy aika pitkälti samana. Keskusta ja vihreät ovat nollatuloksessa edellisiin eduskuntavaaleihin verrattuna ja kaikki miinusprosentit pienenevät hieman painotettuihin lukuihin verrattuna, mutta aika surkealta tulos näyttää näinkin arvioituna.

muutos 2008– muutos 2011–
Kokoomus –9,1 % –9,1 %
SDP –10,1 % –13,2 %
Perussuomalaiset +61,5 % –45,1 %
Keskusta –9,4 % +0,3 %
Vihreät –7,0 % –0,4 %
Vasemmistoliitto –11,1 % –16,6 %
RKP –2,1 % –6,5 %
Kristillisdemokraatit –12,9 % –21,5 %
Suomen Työväenpuolue –25,6 % –71,8 %
Itsenäisyyspuolue –11,5 % –59,5 %
Köyhien Asialla –46,4 % –57,5 %
Piraattipuolue –60,4 %
Vapauspuolue –99,7 %
Muutos 2011 –83,2 %
Suomen Kommunistinen Puolue –20,1 % +21,1 %
Kommunistinen Työväenpuolue –33,8 % –55,2 %
Muut ryhmät –35,7 % +88,1 %