Ga direct naar inhoud
back to basics: hoe data cleaning ál het verschil maakt

back to basics: hoe data cleaning ál het verschil maakt

Frances Dreyer & Andre Marques

Experienced professionals

Data and AI

Quality Engineering and Testing

[ENGLISH BELOW]

Gaaf, zo’n flashy machine learning-model. Maar zonder een goede dataset ben je nergens. Slechte input levert zelfs met een ingewikkeld model alsnog slechte output. Data engineers Frances Dreyer en Andre Marques breken daarom in hun Tech Talk een lans voor de cleane dataset. En schoon schip maken met je data kan zo makkelijk of ingewikkeld als je zelf wilt. Frances en Andre lichten in deze blog vast een tipje van de sluier.

Een snelle online zoektocht bracht ons meteen bij een interessante dataset die we ook als voorbeeld noemen in onze Tech Talk. Eentje met geanonimiseerde patiëntgegevens over risicofactoren voor hart- en vaatziekten. Met een visuele scan is in een oogopslag te zien dat de set incompleet is; er zijn flink wat gaten te zien. Het gevaar als je deze cijfers gebruikt? Verkeerde voorspellingen. En worst case: mensen die niet op tijd gewaarschuwd worden voor de gezondheidsrisico’s die ze lopen.

De noodzaak van goede data begrijpt iedereen aan de hand van zo’n simpel voorbeeld. Toch merken wij in de praktijk dat lang niet elke scientist daar veel of überhaupt aandacht aan besteedt. Meestal geven zij voorrang aan het model waaraan ze de dataset voeden. Wie wél een dataset wil checken, maar niet weet waar te beginnen, komt online bedrogen uit. Wij vonden wel artikelen die delen van het proces beschreven, maar geen enkele die het hele proces tot in detail besprak. Daarom vonden wij het hoog tijd voor een plek waar je aan de hand van een paar stappen weet hoe je op een goede dataset uitkomt.

In onze Tech Talk doorlopen we die stappen uitgebreid, in deze blog nemen we je alvast mee. En je zal zien: het is best simpel.

1. Visualiseer wat er ontbreekt

Verreweg de makkelijkste stap met hulp van een notebook. Zoals Python Notebook of Google Colab Notebook. In een notebook hoef je slechts een stukje code in te voeren, en boem: je krijgt letterlijk de gaten in je dataset in beeld. Door een beetje met een notebook te spelen kan je ook nog allerlei andere visualisaties maken, zoals bijvoorbeeld heat maps.

2. Identificeer waarom data ontbreekt

Oké, je hebt gaten in je data gespot. Nu wil je weten waarom die data ontbreekt. Er kunnen drie redenen zijn. Wij gebruiken het voorbeeld van de kat die naar de dierenarts gaat om gewogen te worden. Die data kan op de volgende drie manieren incompleet zijn:

– Missing completely at random: door externe factoren, zoals een lege batterij in de weegschaal of de batterij die wordt opgeladen, hierdoor staat het gewicht van de kat niet geregistreerd.

– Missing at random: De kat was ziek en kon niet op de afspraak komen. De gegevens hebben een kolom ‘ziek’ en wanneer die kolom waar is, heeft de kolom ‘gewicht’ een ontbrekende waarde. Die ontbrekende waarde is er door de volledig ingevulde klolom ‘ziek’.

– Missing not at random: het gewicht van de kat is niet ingevuld, want de eigenaar schaamde zich voor het gewicht van de kat. De data ontbreekt dus bewust.

3. Elimineer óf vul de gaten

Afhankelijk van de reden bij stap twee kan je bepalen of je bijvoorbeeld een hele kolom data verwijdert. Dat kan je overigens vaak aan de hand van visualisatie al doen. Als die bijvoorbeeld laat zien dat bijvoorbeeld meer dan 95% van de data uit een kolom ontbreekt, dan kan je die kolom beter helemaal schrappen. Je kunt dit ook al bij minder ontbrekende data besluiten.

Je kunt ook de gaten in je data invullen met het gemiddelde, de modus of de mediaan van de rest van de data. Welke van deze opties het meest geschikt is en waarom, leggen we in onze Tech Talk uit. Hiervoor maak je gebruik van statistisch simpele of geavanceerde methoden. Maak je geen zorgen, je kunt het zo simpel houden als je wilt. Zelfs eenvoudige methoden maken al veel verschil voor de kwaliteit van je dataset.

4. Controleer

Tot slot wil je testen of de ingevulde dataset ook daadwerkelijk waardevol is. Dit doe je aan de hand van een test- en een trainingset. Hoe precies, vertellen we ook weer in onze Tech Talk.

Wat je belangrijkste takeaway moet zijn wat ons betreft? Dat we bewust moeten zijn van onze verantwoordelijkheid voor de kwaliteit van data. Wij gaan niet alleen over de ontwikkeling van modellen, maar ook over hoe clean onze datasets zijn. Zelfs door heel minimaal data op te schonen, maken we al een enorme sprong voorwaarts in onze resultaten.

Kijk hier de Tech Talk terug!

De gaten opvullen of niet, dat is steeds weer de vraag als je met datasets werkt. Als je ze niet opvult, de ontbrekende data dan maar gewoon verwijderen? En als je ze wel opvult, hoe dan? Moet je je eigenlijk ook druk maken over ontbrekende data? In hun Tech Talk geven Frances en Andre antwoord op al deze vragen. Eén antwoord: ja, je moet je altijd iets aantrekken van ontbrekende data. Wat je daarna doet staat alleen niet vast.

Over Frances Dreyer

Wanneer ze niet in datasets duikt, vind je Frances achter de Franse hoorn waarmee ze menig orkest versterkt. Of ze is in de weer met haar haaknaalden, een hobby die na de coronatijd is blijven steken. Ook na vijf jaar zoekt ze in haar werk als data engineer continu naar nieuwe uitdagingen. Zeker als het gaat om technieken en technologie rondom big data.

Over Andre Marques

Data heeft de kracht om onze levens te verbeteren, en daar zet Andre zich al tien jaar dagelijks voor in. Het meest belonend vindt hij het als data waar hij aan heeft gewerkt onze manier van denken verandert. Maar het leven is meer dan cijfers, Andre geniet minstens evenveel van nieuw eten ontdekken met zijn vrouw, podcasts luisteren en hardlopen.


Back to basics: how data cleaning makes all the difference

The flashy machine learning models get all the attention, but they won’t get you anywhere without a good data set. Even a complicated model will produce bad output if you give it bad input. So in their Tech Talk, data engineers Frances Dreyer and Andre Marques break a lance for a clean data set. There are easy ways to give your data a spring cleaning, and there are hard ways to do it. In this blog, Frances and Andre explain all about it.

A simple example like this can help everyone understand the importance of good data. But in the real world, we’ve noticed that a lot of scientists don’t pay much attention to it. They usually focus more on the model they’re feeding with the data set. And those who do want to check their data sets, but don’t know where to start, won’t find much help online. We found some articles that described parts of the process, but none that discussed the entire process in detail. So we thought it was high time to create a place that explains how to get a good data set in just a few steps.

We talk about those steps in detail in our Tech Talk, and this blog will give you a good idea. And you’ll see: it’s really quite simple.

1. Visualize what’s missing

By far the easiest step with the help of a notebook like Python Notebook or Google Colab Notebook. With a notebook, you just have to enter a piece of the code, and bam: you literally see all the holes in the data set. You can also play around with a notebook to create other visualizations, like heat maps.

2. Identify why data are missing

Now that you’ve identified the holes in your data, you want to know why they’re missing. There are three possible reasons. We use the example of taking a cat to a veterinarian to be weighed. The data can be incomplete in one of the following three ways:

– Missing completely at random: the cat can’t be weighed due to external factors, like the scale’s battery being empty or recharged.

– Missing at random: The cat was sick, and didn’t come to the appointment. The data have a column for ‘sick’, and if that column is true, then the ‘weight’ column is missing a value. That missing value is due to the complete column ‘sick’.

– Missing not at random: the cat’s weight hasn’t been filled in, because the owner was embarrassed at how fat it is. So the data are missing on purpose.

3. Eliminate or fill the gaps

Depending on the reason from step two, you can determine if it’s necessary to delete an entire column of data, for example. You can often do that based on the visualization. For example, if it shows that more than 95% of the data in a column are missing, then you can just delete the column entirely. You can also decide to do that if fewer data are missing.

Or you can fill the data with the average, the modal or the median of the rest of the data. We’ll explain which of these options is most suitable and why in our Tech Talk. You can use either simple or advanced statistical methods, but remember that you can keep it as simple as you want. Even simple methods can make a difference in the quality of your data set.

4. Check

Finally, you want to test if the completed data set is actually valuable. You can do that using a test- and training set. We’ll explain how to do that exactly in our Tech Talk.

But the most important takeaway is: that we need to be aware of our responsibility for the quality of data. We’re not just responsible for developing models, but also the cleanliness of our data sets. Even a minor data cleanup can make a huge step forwards in our results.

Tech Talk: Data cleaning – Techniques for identifying and filling in missing values

When you work with data sets, the question you face is always whether or not to fill in the gaps. If you don’t fill them in, should you just delete the missing data? And if you do want to fill them in, how would you do it? Should you even be worrying about missing data? In their Tech Talk, Frances and Andre answer all of these questions and more. But to get you started: yes, you should always be worried about missing data. What you do about it, though, is up to you.

About Frances Dreyer

When she’s not diving into data sets, you can find Frances practicing on her French horn to play in one of her several orchestras. Or she might be knitting something warm; a pandemic pastime that she hasn’t let go of. And even after five years working as a data engineer, she’s still looking for new challenges. Especially when it comes to techniques and technology related to Big Data.

About Andre Marques

Data has the power to improve our lives, and Andre has been working to do that every day for the past 10 years. The most rewarding part of the job to him is when the data he’s worked on change how we think about things. But life is more than just numbers, and Andre enjoys discovering new food with his wife, listening to podcasts and running just as much as working with data.