Toolbox ROOSdagen editie

In de aanloop naar Regiohack besprak ik elke week een programma of techniek die van pas komt bij het bedrijven van datajournalistiek. Laatst gaf ik op de ROOSdagen een workshop namens Regiohack en zet ik hier alle stappen die ik daar heb voor gedaan nog eens op een rij. Handig voor als je er bij was om het zelf nog eens te proberen of handig om te zien wat je gemist hebt.

Bij dit voorbeeld gebruik ik veel software en technieken die ik eerder tijdens andere toolboxen heb beschreven. Mocht ik iets aanhalen wat eerder besproken is staat de link naar de juiste toolbox erbij zodat je je verder in het onderwerp kan verdiepen. Deze toolbox zal dan ook meer gaan over de denkstappen die ik maak en niet uitleggen hoe de verschillende software pakketten werken.

Ik was benieuwd wat de verhoudingen zijn tussen onderwijzers en leerlingen in het basisonderwijs en of hier grote verschillen in zaten, dit bleek niet het geval.


Data verkrijgen
Voor dit verhaal maak ik gebruik van onderwijs data. Het onderwijs is vaak in het nieuws, dus is het handig om te weten wat er op dat gebied aan data te vinden is. Het DUO heeft ook veel open data, die je kan vinden op data.duo.nl. Om in kaart te brengen wat de verhoudingen zijn tussen onderwijzers en leerlingen moeten we een aantal dingen weten. Als eerste het aantal leerlingen per basisschool, hiervoor heb ik de set leerlingen naar gewicht gebruikt waarvan ik alleen de totaalkolom heb geraadpleegd.

Ook moeten we weten hoeveel onderwijzers er werken per school, maar we willen voorkomen dat scholen met veel parttime docenten positief uit de bus komen. Dus pakken we niet de set Onderwijs personeel in aantal personen, maar Onderwijs personeel in FTE als onze databron.

Als laatste pak ik ook het bestand met alle adressen van hoofdverstigingen van basisscholen in Nederland. De sets met leerlingen en FTE bevatten alleen BRIN-nummers en niet de namen van scholen. Omdat ik natuurlijk wil weten hoe mijn oude basisschool het er vanaf brengt wil ik de namen zien in plaats van de BRIN-nummers. De reden dat ik alleen de hoofdvestigingen pak, is omdat het aantal FTE per school alleen op hoofdlocatie niveau zijn verzameld.

Let op dat de gegevens van het aantal leerlingen en FTE uit 2010 komen en de adressen uit 2012, hierdoor ontstaan verschillen doordat scholen in de twee jaar gesloten of geopend zijn. Mocht je dit dus voor een echt artikel gaan gebruiken, bel het DUO op met de vraag of je het adressenbestand van 2010 kan krijgen.

De sets begrijpen
Bijna elke dataset heeft een document waarbij beschreven wordt wat er allemaal in zit en wat het betekent. In de beschrijving van Onderwijs personeel in FTE staat bijvoorbeeld dat de BRIN kolom soms de waarde “bovenschools” bevat: dit betekent dat het personeel is aangenomen door bijvoorbeeld samenwerkingsorganisaties tussen scholen. Omdat het onmogelijk is om deze mensen toe te kennen aan één school zullen we deze mensen later wegfilteren.

In dit document zie je ook de waarschuwing dat het voor DUO niet mogelijk was om alles boven tafel te krijgen omdat ze niet alle gegevens hebben gekregen, zo word je eraan herinnerd dat data nooit een compleet beeld van de werkelijkheid zal geven.

Opschonen
Het eerste wat ik met data doe is het in Refine laden, zie ook mijn eerdere toolbox. De facet opties in Refine stellen je in staat om snel inzicht te krijgen in de data. Hierdoor zie je bijvoorbeeld snel of er rare dingen in staan, of dat er bijvoorbeeld door spelfouten dezelfde dingen op verschillende manieren terugkomen. Ook kun je snel selecties maken in data zodat je verder kan met alleen de gegevens die je wilt hebben.

Bij de data rond FTE kwamen een aantal dingen aan het licht. Als eerste de genoemde bovenschoolse BRIN-nummers die we eruit filteren. Hierdoor moeten we dus bij het trekken van conclusies opletten, een school met weinig docenten kan deze immers ingehuurd hebben via een samenwerkingsverband.

In Refine kun je het bovenschoolse BRIN-nummer eruit filteren met een custom text facet waarbij je het volgende stukje script invoert.

In de kolom ”functie groep” filteren we alles uit de set dat niet onderwijsgevend personeel is door middel van een text facet. Op deze manier krijgen we het aantal FTE wat daadwerkelijk voor de klas staat. “Leraren in opleiding” zou een leuke toevoeging zijn aan ons onderzoek, maar nemen we nu niet mee.

Deze keuzes in het weghalen van data uit een set is belangrijk, het zorgt dat je focus houdt en een set overhoud die je helpt je vraag te beantwoorden. Wees echter niet te blijmoedig met weggooien van kolommen. In het adressenbestand is bijvoorbeeld de kolom “Denominatie” een veld wat ik wel zou behouden. Als we eenmaal aan het visualiseren gaan kan het interessant zijn om te kijken of er verschillen zijn tussen typen scholen.

Combineren
Bij het combineren van datasets gaan we op zoek naar unieke overeenkomende sleutels. Dit zijn velden waarvan je weet dat ze uniek zijn voor elke waarde. Soms gaat het hierbij niet om één veld zoals bijvoorbeeld je BSN-nummer, maar om een combinatie van velden zoals Naam en Geboortedatum. In dit geval hebben we geluk en kunnen we het BRIN-nummer pakken als overeenkomende sleutel.

Omdat we bij de FTE en de leeringen eigenlijk enkel interesse hebben in twee kolommen, maken we voor die twee sets een  klein Excel bestand met twee kolomen: BRIN-nummer en totaal aan leerling of FTE. Deze sets laden we in Excel en vervolgens maken we gebruik van een draaitabel om dit nieuwe twee kolommen bestand te maken, zie ook mijn eerdere toolbox.

Bij leerlingen is dit zeker noodzakelijk omdat in deze set het aantal leerlingen niet per BRIN-nummer genoteerd is, maar per vestiging. Hierdoor kan een BRIN-nummer vaker dan één keer voorkomen. Door een draaitabel worden de leerlingenaantallen bij terugkerende BRIN-nummers bij elkaar opgeteld en zal dit bij het combineren van de sets geen problemen opleveren.

Deze bestanden voegen we vervolgens samen met het adressenbestand. Dit doen we door ze te uploaden in Fusion Tables en ze vervolgens te combineren, ook daar is een toolbox over.

Bestanden: Google Fusion Tables van gecombineerde sets.

De gevaren van combineren.
Het aantal BRIN-nummers komt tussen sets helaas niet echt overeen. De sets van adressen en leerlingen komt nog wel aardig in de buurt, maar bij FTE is het echt een compleet ander getal. Tijd voor onderzoek!


Als we kijken naar BRIN-nummer 00AO zien we dat het geen adresgegevens bevat. Als we op zoek gaan naar de school zien we dat het gaat om speciaal onderwijs.

In het adressen bestand wordt het speciaal onderwijs niet mee genomen, dus daardoor ontstaat in ieder geval een deel van het verschil. Ook het feit dat het adressenbestand uit een ander jaar komt verklaart nog een deel. Zorg dat je begrijpt waar dit soort verschillen vandaan komen en of je het zo mag weggooien uit je resultaten of dat er meer data nodig is. Wij gooien de data weg, zodat we verder kunnen.

Visualiseren
Naast Refine is ook Tableau, ook hier is een toolbox over, een mooi stuk software om snel inzicht te krijgen in een dataset. Dus laten we onze gecombineerde set in Tableau bekijken.

We selecteren de velden die we willen visualiseren en Tableau toont in het “show me” menu wat de verstandige visualisatie keuzes zijn. Als we nu een scatterplot kiezen, zien we een duidelijke trend in de verhouding FTE en leerlingen. Door “Denominatie” te slepen naar het “color” en “filter” vak kunnen we ook zien of er grote verschillen zijn tussen verschillende typen scholen.

Uit de visualisatie lijkt het er op dat er richtlijnen zijn voor scholen en dat deze worden nageleefd, de uitschieters hebben mogelijk mensen in dienst via een bovenschools BRIN-nummer, dus denk niet meteen dat school X zich niet aan de regels houdt door een ietwat vreemde verhouding.

Bestanden: Tableau bestand

Conclusie
Als je aan de slag gaat met data kom je er achter dat het vaak toch niet zo makkelijk is als het lijkt. Zelfs binnen één organisatie komen sets uit verschillende jaren en zorgt het combineren van sets voor problemen.

Het is belangrijk dat je snel snapt wat er in je data staat zodat je deze fouten niet alleen tijdig kan opsporen, maar ook leert begrijpen waardoor ze ontstaan. Er zal altijd een verschil zijn tussen getallen in spreadsheets en de werkelijkheid, maar als jij een verhaal schrijft waarbij je het baseert op data moet je kunnen aanwijzen waar mogelijke verschillen ontstaan en waarom.

In dit artikel heb ik een aantal dingen weggewuifd om snel te laten zien wat de stappen zouden kunnen zijn om van data naar een visualisatie te gaan. Let er op dat als je zelf aan de slag gaat en het voor een echt artikel doet je goed nadenkt over de verschillende stappen en wat voor soort discrepanties er zullen ontstaan tussen de cijfers en de werkelijkheid.

Over Heinze Havinga

Schrijft voor regiohack over tools en technieken en is altijd lastig te vallen met vragen over data verzamelen, ordenen en visualiseren. In het dagelijkse leven zelfstandige ondernemer op het gebied van webmashups, interactieve installaties en creatieve vraagstukken. Op twitter te vinden onder @HeinzeHavinga
Dit bericht is geplaatst in Toolbox en getagd, , . Bookmark de permalink.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

De volgende HTML tags en attributen zijn toegestaan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>