De programmeertaal was BASIC, een uitvinding (geen grap) van Bill Gates. Het verhaal over de opkomst van de hobby-computers is fascinerend en kunt u terugvinden in het boek “The Innovators” van Walter Isaacson.
Na BASIC kwam Pascal, de onderwijstaal van de HTS, waarin ik het volhield tot mijn afstuderen op de TU Delft. Daarna maakte ik veel vlieguren in Fortran90. Het leerproces van deze talen was altijd hetzelfde, met dikke boeken naast de computer. En Pascal werd op de HTS onderwezen.
Python is anders dan alle talen die ik tot nu toe kende. Het meest moest ik wennen aan hoe geintegreerd deze taal is met het internet. Er zijn wel boeken over Python, maar het beste is om gewoon te beginnen en foutmeldingen (want die krijg je veelvuldig) te kopieren in Google. Je vind dan ten minste vijf oplossingen voor je probleem. En ook de enorme rijkdom aan packages op Github blijft mij verbazen. Over de mogelijkheid om vanuit je script het internet te benaderen schreef ik vorige week. Ik heb daarvan nog maar net het begin gezien.
knmy
(naschrift oktober 2022: het KNMI heeft de data-website gewijzigd waardoor het mooie knmy niet meer werkt. Wel heb ik van knmy genoeg geleerd om mijn eigen downloader voor KNMI-data te schrijven en deze heb ik beschikbaar gesteld op github)
Ik heb twee packages voor KNMI-data getest. Het handigst in gebruik vond ik “knmy”. Dat kent twee functies, eentje voor het downloaden van dagelijkse data (beschikbaar vanaf 1901) en eentje voor het downloaden van uursdata (beschikbaar vanaf 1951). het alternatief is "knmi-py" maar daarmee had ik constant ruzie (hou er bij deze opmerking wel rekening mee dat het probleem zich altijd bevind tussen de monitor en de rugleuning van mijn stoel). Met de hand downloaden kan natuurlijk ook nog steeds als u dat fijner vindt.
Met knmy onder de motorkap van mijn script had ik snel uitgevonden dat er geen sneeuwdata zit in de dagelijkse gegevens. Jammer. Onze analyse kan niet verder terug dan 1951 met behulp van de uursgegevens. Maar 70 jaar is ook lang.
Het KNMI registreert sneeuw op een eenvoudige manier. Namelijk met 0 (het sneeuwt niet) of 1 (het sneeuwt). De neerslagregistratie loopt gewoon door en die geeft millimeters regenval aan; in sommige periodes dus gesmolten sneeuw.
Ik download dus in ieder geval de regenval en de indicator voor sneeuwval. Vanwege onbedwingbare nieuwsgierigheid download ik ook de temperatuur. De indicator voor sneeuwval en de gemeten neerslag zet ik om in twee kolommen “gevallen regen” en “gevallen sneeuw”.
De definitie van sneeuwjacht
In de wetenschap is de definitie de basis van alles. De zoek-opdracht “Sneeuwjacht definitie” in Google levert een mooi lijstje op. Het meest duidelijk is Wikipedia - sneeuwjacht: “Sneeuwjacht is sneeuwval met windstoten boven windkracht 5”. Dus niet de gemiddelde wind maar de windstoten. Terug naar de data. Zitten de windstoten erbij? Ja, maar niet in Beaufort maar in decimeters per seconde. Delen door 10 geeft de betere eenheid meters per seconde.
Het laatste stukje van de puzzel vinden we in de windschaal van Beaufort, te vinden op https://www.knmi.nl/kennis-en-datacentrum/uitleg/windschaal-van-beaufort. Windkracht 5 komt overeen met 8 tot 11 m/s.
Plaatjes kijken – alle data
De data is binnen dus we gaan…. plaatjes kijken. Om je data te leren kennen kan je van iedere variabele (kolom) in je data een histogram maken om gevoel te krijgen voor de spreiding. Of je kan de variabelen paarsgewijs tegen elkaar uitzetten om te zien welke verbanden zich aftekenen. We hebben een dataset met vier variabelen “geoogst”, dus dat betekent vier histogrammen en zes unieke paarsgewijze plots. Tien grafieken, dus een hoop werk zou je zeggen. Deze manier van data bekijken is echter een heel veel gebruikte, dus…. bestaat er een commando voor. Het resultaat staat hieronder.