Stor forbedring: ssb.nos data-API v2 ute i beta

Data fra SSB betyr for de fleste tabeller i excel, på ark eller i databaser. For at de skal komme ut til folket via digitale medier er det bedre med et API - og her ser du hvordan det kommer til å se ut.

For tiden tester ssb.no sin kom­mende ver­sjon av sitt data-API og denne gan­gen ser alt mye bedre ut enn før: 5000 tabeller, json-stat og du kan være med å teste.

I 2009 skreiv vi i vox­pub­li­ca om ssb.no’s nye web­sider og tanker om API, det hadde (muli­gens uoff­isielt) kode­navn “nyess­b­no”. Da tiden endelig kom for et rik­tig API, kom data.ssb.no som hadde (og fremde­les har) et utvalg av SSBs mest pop­ulære tabeller.

Det var helt klart et skritt i rik­tig ret­ning, men API-et er ganske begrenset, for eksem­pel for en nys­g­jer­rige gravende jour­nal­ist er dette smale utval­get for­mod­entlig et rimelig uin­ter­es­sant sted å grave.

Det som hold­er på å skje nå er mye vik­tigere: nå kom­mer 5000 tabeller (“alle 5000 sta­tis­tikkbank­ta­bel­lene”, ifølge invi­tasjo­nen til å beta-teste tjen­esten). For­mod­entlig løpende opp­datert etter­som ny data kom­mer inn. Hvis dette blir prak­sis gjør SSB det vi håpte de skulle i for­rige runde: gjøre seg rel­e­vante for dig­i­tale hoder som trenger maskin­les­bare tall for viderebruk.

Dette betyr et mye bredere tilbud, et mye mer spen­nende tilbud og forhåpentligvis et tilbud som kan gjøre data fra ssb.no mer brukt i pressen, på kafeer, tax­i­er og rundt middagsbordene. 

Dette kan for noen kan­skje se ut som en teknisk detalj (nytt API) for sta­tis­tikk-nerder. Det er helt rik­tig, og indi­rek­te en total mis­forståelse. For de som ikke leser tall med glede, leser nem­lig bilder like lett som alle andre. Synet vårt er per­fek­sjon­ert gjen­nom evo­lusjon til å raskt opp­fat­te far­er og goder så vel som tren­der og endring — per­fekt for å tolke datavi­su­alis­eringer. Og mer data fra ssb.no i for­nuftig datafor­mat er en server­ing på sølv­fat for den som vil pre­sen­tere tall i bilder. 

Eksempler:

API-et er i beta, og ble åpnet den 22 desem­ber 2015, så det er ikke all ver­dens av diver­sitet i eksem­pler å peke til ennå, men Xavier Badosa (utvikler av JSON-stat.org) har flere eksem­pler fra første ver­sjon av API-et. Det er f.eks. slike ting vi kan for­vente oss å se mer av:

valutta_kalk

Inflasjon­skalku­la­tor

eldregolgen

Ani­mert pop­u­lasjospyra­mide, “eldrebøl­gen”.

koroplett_norge

Koro­pletkart over Norge far­get etter kom­munens innbyggertall

smaabarn_norge_over_tid

Småbarn i Norge over tid

At SSB har data åpn­er også for sam­men­likn­ing med data fra andre land. Her norsk og dan­sk inflasjon sammenlignet.
dansk_norsk_inflasjon

Kon­sumprisin­dek­sen for Norge og Dan­mark i samme graf.

Da Norge ikke er med i EU og vi stort sett ikke er med i målet for euro­stat blir dette ekstra vik­tig. Her er arbei­d­sledighet­stal­lene til OECD.
arbeidsledighet

Badosa har flere eksem­pler på bl.ocks.org — alle på det “gam­le” API-et, men det nye ser ut til å følge over samme lest, som virk­er som en for­nuftig mod­ell. API-et er i beta, så det er ikke urimelig å finne ting som ikke virk­er, er feil, ikke er så sta­bilt eller opp­datert som et fer­dig vil være, men at vi får innblikk i dette mens det fort­satt er under utform­ing, er en fordel for alle. 

Her er APIet

Det er ikke lenket fra ssb.nos van­lige nettsider enda, men her er lenkene til det gam­le og det nye (antake­lig med midler­tidig URL) API-et.

PS: I min iver og i tumul­tene av et nytt semes­ter copy/pasta jeg eksem­pelkode fra pyj­s­tat og kon­klud­erte at jeg måtte sette meg ned med bedre tid, for dette virk­er ikke. Greia var at det nye API-et for­ven­ter POST-kall med para­me­tre fra con­sole’n. Her er python-kode som virk­er (takk til SSB for raskt svar):

Hvis du kjen­ner til flere eksem­pler om hvor­dan det nye API-et blir brukt, eller har laget noe selv, eller har noen ideer til hvor­dan dette kan eller bør brukes: legg igjen en kom­men­tar under — vi trenger at disse dataene kom­mer til syne og til nytte.

TEMA

Å

pne dat
a

25 ARTIKLER FRA VOX PUBLICA

FLERE KILDER - FAKTA - KONTEKST

5 KOMMENTARER

  1. Kjem­pestort fram­skritt i HVORDAN data fra SSB formi­dles, og drastisk utvid­ing av hva som kan automa­tis­eres av videre­bruk. Men når det gjelder HVA som pub­lis­eres, ser det ut til å være nøyak­tig de samme data som har vært pub­lis­ert i SSBs datavare­hus i et tiår, alt­så begrenset sett pre­de­fin­erte søk satt opp av SSB.
    Hvis dataene du skal bruke ikke er i SSBs eksis­terende pub­lis­eringer, får du jo ikke ut noen nye data. (jeg håper selvføl­gelig at jeg tar feil)

    Eksem­pel:
    Nettst­edet jeg job­ber i får svært mange hen­ven­delser om lønnssta­tis­tikk, der­for videre­formi­dler vi dette tilknyt­tet annen rel­e­vant infor­masjon på flere hun­dre nettsider.
    Fra både Dan­marks Sta­tis­tik og Sta­tis­tiska Cen­tral­byrån kan mine uten­landske kol­leger laste ned lønnssta­tis­tikk for alle yrk­er og næringer som har stort nok antall arbei­d­stakere til å pub­lis­ere lønnssta­tis­tikk for i én enkelt tabell. For å få tilsvarende norske data, måtte vi laste ned 134 forskjel­lige tabeller (!), sam­men­stille disse, spalte opp og tilordne sta­tis­tikkvari­abler i rett felt basert på fritekst i vari­abel­navn siden vari­abler er ikke-standardiserte.
    Hvor­for et datasett som stam­mer fra et og samme SSB-reg­is­ter må spres på 134 forskjel­lige URLer uten mulighet for å få dem sam­let, når det hadde vært let­tere å gi til­gang til dataene gjen­nom 1 URL er noe mystisk.

  2. Hei Har­ald. Jeg er litt usikker på hvor SSB trekker lin­jen mel­lom ting de skal pub­lis­ere gjen­nom dette API­et og andre ting de har. Jeg har inntrykk av at det vi får her er en maskin­les­bar utgave av det som lig­ger på SSB.no, som selvsagt bare er et utsnitt av en del av hva SSB sit­ter på (f.eks. er det meste aggregerte tall, der en forsker ville ønske seg indi­vidu­elle dat­a­punk­ter). Jeg fikk dog inntrykk av at ting som gjøres på tidsserier, så er poenget her at ny data legges til eksis­terende løpende, slik at det gir mening å bygge sys­te­mer som kan ligge oppå dette. Det kan bli veldig nyttig. 

    Eksem­pelet ditt med lønnssta­tis­tikk er kan­skje et godt eksem­pel på hva som kan skje:

    1. det burde nå være mulig å skrive et skript som kon­solid­er­er de 134 (wow, det virk­er litt mye ja) tabel­lene og set­ter sam­men til den datas­truk­turen du trenger — et skript som når det først er skrevet kan fun­gere uke-etter-uke, måned-etter-måned når ny data legges ut (hvis ny data legges ut, noe vi må anta. Test-API­et nå er sta­tisk, men skal over i et “live” miljø etter test-fasen, står det i notatet for APIet). 

    2. Skriptet ditt eksem­pli­fis­er­er (kan­skje) hvor­dan ditt per­spek­tiv er ulikt SSBs eget, og dermed hvor­dan SSB kan/må endre måten noen typer data eksponeres maskin­les­bart, da maskin­les­barhet innl­y­sende for­dr­er en annen bruk enn tabeller til SSBs nett­side. Det er mask­in­er, ikke men­nesker, som i førsteom­gang skal lese dette, og det er rimelig å antat at målet ikke er å rent gjen­skape de samme tabel­lene som allerede lig­ger på SSB.no i HTML.

    API­et er i beta, så nå er jo virke­lig sjansen til å påpeke sånt, slik at SSB kan jus­tere inn mot den bruken “folk der ute” (oss med data­mask­in­er) vil bruke den. Hvis vi (poten­sielle brukere) ikke ender opp med å bruke API­et, så blir jo dette en fiasko, og kun et spill for gal­leri­et. Men jeg er nå litt mer opti­mistisk, og håper at når SSB nå får HVORDAN på plass, så er HVA kun begrenset av poli­tikk og penger. Med et par rik­tig gode cas­er av for­nuftig videre­bruk kan dette forhåpentligvis bli noe som vokser, der HVA som pub­lis­er­er både blir en løpende og vok­sende størrelse.

  3. Ideelt sett kunne inter­es­sante reg­is­ter­da­ta vært lagret i et datavare­hus med et offentlig API. Dermed kunne en gjort spør­ringer mot datavare­huset om hva som helst, ikke bare de 5000 pre­de­fin­erte søkene som Sta­tis­tikkbanken tilbyr. Terskelverdier og anonymis­er­ingsal­go­rit­mer sikret at dataene en får ut gjen­nom spør­ringer mot datavare­huset er sta­tis­tiske data, ikke per­son­da­ta. Dessuten kunne infor­masjon om datak­valitet og kat­e­gorienes validitet ful­gt med. F.eks. sikre at dataene en får ut ikke er så små grup­per at de kan avanonymis­eres. Eller noen av dataset­tene i datavare­husene er knyt­tet til kom­muner, grunnkretser eller sel­skaper, og således ikke er persondata. 

    Dette er selvføl­gelig en helt annen måte å formi­dle offentlig sta­tis­tikk på enn den meto­den som etat­en har brukt siden starten i 1876. Men en har jo tidligere klart tilsvarende mod­erniseringer, som for eksem­pel da en gikk over fra å folketellinger hvert tiår, til kon­tin­uerlige folketellinger gjen­nom bruk av kon­tin­uerlig opp­datert folkeregister.

  4. Bare helt kort så lager SSB sta­tis­tikk. Det er van­ligvis reg­is­tereiers ans­var å evt. gjøre reg­is­ter­da­ta tilgjen­gelig. Dette gjør f.eks. Brønnøysundregistrene.
    SSB pub­lis­er­er den off­isielle sta­tis­tikken i Sta­tis­tikkbanken, som nå blir tilgjen­gelig via API.
    Til det konkrete eksem­plet kan jeg oppl­yse at Lønnssta­tis­tikken er under omleg­ging. Det betyr at 2015 tal­lene vil bli pub­lis­ert i år, og på nytt i annen form, til neste år.

  5. Hei,

    Just to men­tion this tool I just cre­at­ed if you need to process ssb data (or oth­er json-stat v1 data) with java :

    https://ssb-java-demo.herokuapp.com
    https://github.com/laurent-thuy/ssb-java

    Regards

    Lau­rent

til toppen