Dictionary

Data profiling

Data profiling is een dataset systematisch doorlichten voor je er iets op bouwt: welke waarden komen voor, hoeveel velden staan leeg, zijn je sleutels uniek, kloppen de formaten. Zo ken je de zwakke plekken van een tabel voor je er een rapport of migratie op baseert, niet erna.

Wat is data profiling?

Data profiling is een dataset systematisch doorlichten om te weten hoe ze in elkaar zit, wat erin staat en waar de zwakke plekken zitten, nog voor je er een rapport, een migratie of een model op bouwt. Je bekijkt niet één record, maar de tabel als geheel: welke waarden komen voor, hoe vaak, hoeveel velden staan leeg, of het formaat klopt.

Vergelijk het met een bouwkundige keuring voor je een huis koopt: je klopt op de muren en checkt de leidingen, zodat je weet wat je koopt voor je de akte tekent. Profiling doet dat met een tabel. De uitkomst is een profiel, per kolom een reeks cijfers en verdelingen die samen tonen of de data betrouwbaar genoeg is voor wat je ermee wil doen.

Wat meet je bij data profiling?

Profiling draait rond een handvol metingen die je per kolom uitvoert. Elk cijfer beantwoordt een concrete vraag over de data.

  • Waardeverdeling
    Welke waarden komen voor en hoe vaak? Een kolom "land" die 95 procent "België" toont met daarnaast een staart van varianten, vertelt je meteen waar het schuurt.

  • Lege en foute velden
    Hoeveel procent van de kolom staat leeg of bevat een fout? Een btw-nummer dat bij drie op de tien klanten ontbreekt, zie je liever nu dan tijdens de facturatie.

  • Distinct en uniek
    Hoeveel verschillende waarden staan er, en hoeveel komen maar één keer voor? Distinct telt de verschillende waarden, uniek telt de waarden met precies één voorkomen. Op een kolom die je sleutel zou moeten zijn, verraadt dat meteen de dubbels.

  • Min, max en bereik
    Wat is de laagste en de hoogste waarde? Een geboortedatum in 1900 of 2064 springt er zo uit, net als een negatieve prijs.

  • Patroon en formaat
    Volgen de waarden het verwachte patroon? Een e-mailadres zonder apenstaartje, een postcode met letters erin, een datum die als losse tekst is opgeslagen. Meteen zie je ook de uitschieters, zoals één order van 2 miljoen euro tussen duizend orders van gemiddeld 200 euro: ofwel een grote deal, ofwel een typefout die je gemiddelde scheeftrekt.

Wanneer doe je data profiling?

Je doet profiling telkens je op data gaat bouwen die je nog niet goed kent. Bij een nieuwe bron, een koppeling met een CRM of boekhoudpakket dat je nog niet eerder verwerkte, toont profiling hoe de leverancier zijn velden echt invult, wat vaak afwijkt van wat de documentatie belooft. Voor een migratie meet je wat er in de oude tabellen zit, zodat je vooraf weet welke records gaan weigeren op de nieuwe validatieregels, in plaats van het halverwege te ontdekken.

En voor je een datamodel of dashboard bouwt, check je of de sleutels uniek zijn en of de velden waarop je gaat groeperen consistent zijn ingevuld. Een rapport op ongecontroleerde data telt vrolijk verkeerd.

Een rommelige klantentabel doorlichten

Stel: je krijgt een export van 8.000 klanten uit een oud CRM en je moet er een klantenoverzicht op bouwen. Voor je begint, laat je de tabel door een profiling-pass gaan. Wat komt eruit?

De kolom land heeft veertien distinct waarden voor een klantenbestand dat bijna volledig Belgisch is: "België", "Belgie", "BE", "B", "Belgium" en nog een reeks varianten. Puur een kwestie van schrijfwijze, maar elk rapport dat op land groepeert, verdeelt je Belgische klanten over vijf hokjes.

De kolom e-mail staat bij 18 procent leeg, en een handvol van de ingevulde adressen mist het apenstaartje. De kolom geboortedatum loopt van 1900 tot 2064, met standaardwaarden en typefouten die je gemiddelde leeftijd onbruikbaar maken. En op klant-id, dat de sleutel zou moeten zijn, staan 8.000 rijen maar slechts 7.850 distinct waarden: 150 dubbels, klanten die twee keer werden aangemaakt.

In een halfuur weet je nu wat je te wachten staat en welke opkuis er eerst moet gebeuren, nog voor je één visual hebt gebouwd. Zonder die pass was je er pas achtergekomen toen het klantenaantal in het dashboard niet strookte met je buikgevoel.

Van profiling naar datakwaliteit

Profiling en datakwaliteit horen samen, maar ze doen iets anders. Profiling brengt de problemen aan het licht: het is de meting die toont waar het misloopt. Datakwaliteit is het werk daarna, de regels die je opstelt om die problemen recht te zetten en om te bewaken dat ze niet terugkeren.

De volgorde is logisch. Eerst profileren, want je kan pas een zinnige regel schrijven als je weet wat er in de kolom zit. De profiling toont dat klant-id 150 dubbels heeft, en daarop volgt de regel "klant-id moet uniek zijn" die je bij elke verwerking automatisch laat draaien. Die vaste controles heten vaak data testing: waar profiling een eenmalige foto is die je neemt voor je begint, blijft testing draaien bij elke nieuwe lading data. En data observability bewaakt je tabellen continu in productie, en slaat alarm wanneer een verse meting afwijkt van het normale patroon.

Voor dubbele records bestaat een aparte discipline, deduplicatie, en wie stamgegevens zoals klanten en producten structureel zuiver wil houden, komt vroeg of laat bij master data management uit. Profiling is telkens de eerste stap: het meet hoe erg het probleem is voor je beslist hoe je het aanpakt.

Tools waar een KMO mee in aanraking komt

Je hoeft geen dure software te kopen om te beginnen. Drie tools die je vroeg of laat tegenkomt:

  • Power Query
    In Power BI en Excel zit profiling ingebouwd. Onder het tabblad Beeld zet je Kolomkwaliteit, Kolomdistributie en Kolomprofiel aan, en je ziet meteen per kolom het percentage geldige, foute en lege waarden, plus het aantal distinct en unieke waarden. Let op: standaard kijkt Power Query naar de eerste 1.000 rijen. Voor een echte meting schakel je linksonder over naar profiling op de volledige dataset.

  • ydata-profiling (het vroegere pandas-profiling)
    Een Python-bibliotheek die met één regel code een volledig rapport genereert: per kolom de statistieken, de verdelingen, de ontbrekende waarden en waarschuwingen voor zaken als hoge cardinaliteit of veel nulwaarden. Het rapport rolt eruit als een HTML-pagina die je kan delen.

  • Great Expectations
    Een tool die de brug maakt van profiling naar vaste controles. Je legt verwachtingen vast over een tabel, bijvoorbeeld dat een kolom niet leeg mag zijn, dat de waarden uniek moeten zijn, of dat een getal tussen een min en een max ligt. De tool valideert elke nieuwe lading data tegen die verwachtingen.

Laatst Bijgewerkt: July 7, 2026 Terug naar Woordenboek
Trefwoorden
data profiling datakwaliteit data quality data observability master data management deduplicatie power query data testing data profiling tools data engineering