Data verzamelen – Hoe kom je aan je data?

Als data scientist of business analist sta je natuurlijk te popelen om meteen allerlei analyses uit te voeren en nieuwe inzichten te creëren. Om dit te kunnen doen heb je een essentieel onderdeel nodig: data. De juiste data verkrijgen is fundamenteel voor wat je erna mee wil gaan doen, van descriptieve analyse tot predictive modeling. Data is wat benzine is voor je auto, zonder dat kun je niets. Het verkrijgen ervan behoort dan ook tot de eerste stap. Echter wordt dit in de praktijk niet altijd even zorgvuldig gedaan. Dit levert vaak gedoe op verder in het proces. De juiste data verkrijgen kan dus later kosten en tijd besparen. Maar hoe zorg je ervoor dat dit goed gaat en hoe kom je aan de data die je nodig hebt?

Stap 1

Als allereerste stap, voordat er überhaupt een computer bij komt kijken moet je je 2 dingen afvragen: Wat wil ik weten & wat heb ik daarvoor nodig?

  • Wat wil ik weten?

Om hiervoor tot een antwoord te komen moet je gebruik maken van je sociale vaardigheden en kritische vragen durven te stellen. Het is de bedoeling dat je erachter komt wat er nou precies gevraagd wordt. Door gesprekken te hebben met diegene van wie de opdracht komt kan je de initiële opdracht vaak concretiseren en kom je achter de vraag achter de vraag. Het gebeurt vaak dat een partij vraagt: doe A, terwijl achteraf blijkt dat ze eigenlijk B hadden gewild. Een kort gesprek kan er al voor zorgen dat je duidelijkheid schept in wat er gevraagd wordt. Schroom niet om tijdens deze gesprekken kritisch te zijn. Willen ze een analyse? Vraag waarvoor en naar de details. Moet het in jaren, maanden, dagen, uren? Door goed door te vragen concretiseer je de opdracht en voorkom je onnodig werk.

  • Wat heb ik daarvoor nodig?

Deze vraag spreekt enigszins voor zich, maar is goed om altijd even over na te denken alvorens aan de slag te gaan. Je weet ondertussen wat er gecreëerd/geanalyseerd moet worden, vervolgens moet je bedenken wat hier allemaal (qua data) voor nodig is. Wordt er een financiële analyse gevraagd, denk dan aan bijvoorbeeld de dagwaarde van de aandelen, de omzet, belasting, uitgaven, verschillende filialen, noem maar op. Probeer voor het daadwerkelijk data verzamelen hier even kort over te brainstormen wat allemaal nodig kan zijn om in de analyse te stoppen.

Stap 2

Wat heb ik al intern en wat kan ik daarmee?

Veel data is al beschikbaar en zijn misschien al eerdere analyses meegedaan. Neem mee uit de vorige stap de lijst met wat je nodig hebt en kijk eerst in je organisatie wat er al beschikbaar is. Veel organisaties beschikken over een Cloud of een datawarehouse waar veel data op staat. Ook hier is belangrijk, wees niet bang om rond te vragen en te mailen. Soms hebben collega’s/afdelingen hun eigen Excel sheets opgeslagen. Uitzoeken wat er al is, voorkomt dubbel werk. Kijk vervolgens goed naar de beschikbare data. Kan je die zo transformeren dat je krijgt wat je nodig hebt?

Stap 3

Er is niet beschikbaar wat ik nodig heb, wat nu?

Dit kan natuurlijk voorkomen. Je weet wat er van je gevraagd wordt, je hebt intern overal gezocht en toch blijkt er nog essentiële data te missen. Wat nu? Daar zijn verscheidene opties voor en vergt soms wat creativiteit.

  • Google/ kaggle/CBS

Het eerste wat je kunt doen is natuurlijk even googelen. Online zijn ontzettend veel databestanden te vinden. Heb je bijvoorbeeld het weerbericht nodig van de afgelopen 20 jaar? Staat online. De gegevens van de passagiers van de Titanic? Ook zo te vinden. Google is vaak je beste vriend om aanvullende data of geodata te vinden. Ook een goede website hiervoor is kaggle.com. Hier hebben ze meer dan 19.000 publieke datasets over van alles en nog wat. Het voordeel hiervan is dat ze vaak al helemaal op orde (clean) zijn! Beter goed gejat dan slecht zelfgemaakt.  Zoek je meer gericht op de Nederlandse omgeving is het Centraal Bureau voor de Statistiek (CBS) aan te raden. Hier vind je van alle cijfers over allerlei sectoren in Nederland. Grote kans dus dat hier tussenstaat wat je nodig hebt! Struin even het web af, grote kans dat er iets beschikbaar is wat je kunt gebruiken.

  • Zelf generen

Mocht het nergens te vinden zijn kan je natuurlijk ook zelf je data gaan generen. Het nadeel hiervan is dat dit soms arbeidsintensief kan zijn en het veel tijd kost. Registreert jouw bedrijf bijvoorbeeld de hoeveelheid klanten per dag niet, maar heb je dat wel nodig? Dan moet je kijken of dit te realiseren is. Ook zou je eventueel een aantal steekproeven kunnen houden om vervolgens a.d.h.v. statistiek een relatief accurate schatting kunnen maken. Soms is het echter niet anders en is dit gewoon nodig. Hou er rekening mee dat het tijd kan kosten voordat je enige betrouwbare data hebt.

  • Ophalen vanuit apps/websites

Het kan voorkomen dat je data die je nodig hebt online vindt, echter niet in een handig bestand. Soms staat het op een website of in een app, of staat de data in een intern systeem (bijvoorbeeld een CRM). Gelukkig zijn hier oplossingen voor om toch dit handig te kunnen verkrijgen dankzij een API of webscraping.

Een API (Application Programming Interface) maakt communicatie en het uitwisselen van informatie mogelijk tussen verschillende (software) systemen mogelijk. Dankzij deze API’s kan je contact leggen met systemen en data hieruit opvragen. Een voorbeeld is de twitter API. Dankzij deze API kan je contact leggen met de twitter database (waar alle tweets in staan) en zo filteren op bepaalde hashtags. Dankzij de API kan je zo de informatie uit het systeem halen. Andere voorbeelden zijn de Wikipedia, Google Maps of het CBS, deze beschikken allemaal over API’s. Check of eventueel de interne & externe systemen waarmee je werkt ook over een API beschikken. Op deze manier kun je bij de data. Kortom een makkelijke manier om met systemen te communiceren!

Webscraping is simpel gezegd het kopiëren van een website. Wil jij bijvoorbeeld alle soorten stofzuigers kopiëren die op bol.com staan? Dat kan handmatig, maar kan je ook door een stukje code laten doen, dat heet webscraping. Vervolgens kan je het opslaan in een database. Hiervoor is wel enige programmeerervaring nodig is. Ook is er verschil of de website op basis van html of javascript is, wat het kan bemoeilijken. Verder moet er rekening mee gehouden worden dat de data grote kans heeft om erg ongestructureerd te zijn. Een extra tip, mocht je dit gaan doen zorg ervoor dat je de website niet bombardeert met aanvragen, want dan gaan ze denken dat het een poging tot hacken is en kan je geblokkeerd worden. Webscraping is een makkelijke manier om data van een website te plukken, echter kan het zijn dat dit niet altijd vlekkeloos verloopt.

Stap 4

Even controleren

Na alle stappen te hebben gevolgd beschik je als het goed is over de data die je nodig hebt voor je analyse. Check hiervoor nog 1 belangrijk ding, de kwaliteit van je data. Staan er nog nutteloze tekens tussen, welke eenheden en tijdzones worden er gebruikt, mist er iets in de data en staan er misschien onnodige spaties in? Kijk ook of de labels van de data kloppen. Zonder schone data ben je nergens.

Stap 5

Ready!

Voilà, Als het goed is beschik je nu over de juiste data! Zoals je gemerkt hebt begint het dus altijd eerst met uitzoeken wat je nodig hebt voordat je het gaat zoeken. Hou altijd in gedachte met welk doel je welke data zoekt, wees creatief en vergeet niet de kwaliteit te bekijken, dan komt het helemaal goed met jouw data verzamelingstocht. Succes!

;