Nieuwe artikelen

Python data mining

Python kan helpen om patronen in gegevens te onderzoeken, maar een goede datamininganalyse begint bij een duidelijke vraag. Neem als voorbeeld een organisatie die wil begrijpen waarom sommige leveringen meer tijd kosten dan andere. Er zijn bestanden met bestellingen, verzendmomenten en afleverinformatie. De uitdaging is om daar een eerlijk en bruikbaar overzicht van te maken, zonder verschillen te verwarren met oorzaken die niet zijn aangetoond.

Beschrijf wat je wilt vergelijken

Leg eerst vast wat levertijd betekent. Begint de telling bij de bestelling, de betaling of de verzending? Eindigt zij bij de eerste afleverpoging of bij ontvangst door de klant? Verschillende definities leveren verschillende uitkomsten op. Kies daarom een beschrijving die bij de onderzoeksvraag past en noteer haar voordat je gegevens uit meerdere bestanden samenvoegt.

Bepaal vervolgens welke periode wordt onderzocht. Een drukke feestperiode kan afwijken van gewone weken. Nieuwe en oude processen kunnen ook door elkaar lopen. Neem zulke omstandigheden mee in de beschrijving van de gegevens. Daarmee voorkom je dat één samenvattend getal wordt gebruikt alsof alle bestellingen onder dezelfde omstandigheden zijn verwerkt.

Maak de invoer controleerbaar

Lees eerst een beperkt deel van de bestanden en bekijk enkele volledige voorbeelden. Controleer of dezelfde bestelling in verschillende tabellen herkenbaar is. Als een nummer ontbreekt of op meerdere manieren wordt geschreven, moet dat worden opgelost voordat de tabellen worden gekoppeld. Anders kunnen records verdwijnen of juist onbedoeld meerdere keren meetellen.

Bekijk lege en onverwachte waarden afzonderlijk. Een ontbrekende afleverdatum kan betekenen dat een bestelling nog onderweg is, maar ook dat de registratie niet is bijgewerkt. Die situaties mogen niet zonder toelichting hetzelfde worden behandeld. Maak een aparte categorie voor onduidelijke gevallen en noteer hoeveel voorbeelden daardoor buiten een bepaalde berekening vallen.

Onderzoek eerst eenvoudige patronen

Begin met aantallen en verdelingen. Hoeveel bestellingen zijn er per week en hoe zijn de doorlooptijden verdeeld? Vergelijk vervolgens relevante groepen, zoals verzendmethode of soort bestelling. Een gemiddelde alleen kan veel verhullen. Enkele zeer lange trajecten kunnen het gemiddelde verhogen, terwijl het grootste deel van de bestellingen nauwelijks is veranderd.

Bekijk daarom ook concrete voorbeelden uit verschillende delen van de verdeling. Zoek uit welke omstandigheden bij opvallende gevallen horen. Misschien blijkt dat een bepaalde groep vaak onvolledige adressen bevat. Dat is een aanleiding voor verder onderzoek. Het is nog geen bewijs dat de gekozen groepsindeling op zichzelf de vertraging veroorzaakt.

Maak berekeningen herhaalbaar

Leg de bewerkingen vast in een Python script dat dezelfde invoer op dezelfde manier verwerkt. Geef tussenstappen herkenbare namen en bewaar korte controleoverzichten. Als het aantal rijen na een koppeling verandert, moet je kunnen verklaren waarom. Het script is daarmee niet alleen een middel om sneller te rekenen, maar ook een beschrijving van de gevolgde redenering.

Houd oorspronkelijke bestanden apart van afgeleide resultaten. Voeg correcties niet handmatig toe aan een tabel die bij de volgende uitvoering wordt overschreven. Beschrijf de correctieregel in het proces en bewaar de aanleiding. Zo blijft zichtbaar hoe het eindresultaat afwijkt van de ruwe registratie en kan iemand anders dezelfde analyse opnieuw uitvoeren.

Voorspellen vraagt een nieuwe beoordeling

Als de verkennende analyse nuttig is, ontstaat misschien de vraag of levertijden vooraf kunnen worden geschat. Dat is een andere opdracht dan het beschrijven van afgeronde bestellingen. Je mag dan alleen informatie gebruiken die beschikbaar is op het moment van voorspellen. Een gegeven dat pas na aflevering bekend wordt, hoort niet bij de invoer van zo’n voorspelling.

Beoordeel bovendien hoe een schatting zou worden gebruikt. Een intern planningsadvies kan andere eisen hebben dan een toezegging aan een klant. Spreek af welke afwijking acceptabel is en wanneer een medewerker moet meekijken. Een technisch model krijgt pas praktische betekenis wanneer duidelijk is welke beslissing ermee wordt ondersteund en wat een verkeerde uitkomst zou betekenen.

Deel bevindingen met hun context

Bespreek de uitkomsten met iemand die het leveringsproces kent. Die kan ontbrekende omstandigheden aanwijzen en helpen bepalen welke vervolgmeting nodig is voordat een operationele verandering wordt ingevoerd.

Presenteer de belangrijkste patronen samen met de gebruikte definities, periode en uitsluitingen. Laat zien welke vragen beantwoord zijn en welke nog openstaan. Een bruikbare analyse hoeft niet ieder verschil te verklaren. Zij moet vooral een betrouwbaar vertrekpunt bieden voor gerichte verbeteringen. Met die aanpak wordt Python datamining een navolgbaar onderzoek, in plaats van een verzameling cijfers die meer zekerheid lijkt te geven dan de gegevens toelaten.

Python data mining

Sergej Dergatsjev, eigenaar van Online Solutions Group, heeft CompanyGids nieuw leven ingeblazen en het platform verder uitgebouwd tot een moderne bedrijvengids voor België. Bezoek Company Gids en Online Solutions Group.

https://www.dergatsjev.be/2021/02/event-over-python-machine-learning.html

Veelgestelde vragen

Wat is datamining en wat is het doel ervan?▼

Datamining is het proces van het ontdekken van voorspellende informatie uit grote databases. Het doel is het creëren van een model waarvan de inzichten kunnen worden gegeneraliseerd naar vergelijkbare datasets voor praktische toepassingen.

Waarom is Python een populaire tool voor datamining?▼

Python is een van de meest gebruikte tools voor datamining omdat het geschikt is voor alle aspecten van het proces, van gegevensopschoning en organisatie tot het toepassen van machine learning-algoritmen.

Hoe wordt datamining toegepast in fraudedetectie?▼

Banken gebruiken datamining-algoritmen om transacties te classificeren en te voorspellen of deze frauduleus zijn. Het model vergelijkt transacties met historische patronen om verdachte activiteiten op te sporen.

Welke vaardigheden heb ik nodig voor datamining?▼

Voor datamining heb je kennis van statistieken, verschillende programmeertalen zoals Python, en begrip van diverse dataminingtechnieken nodig om succesvol inzichten uit ruwe gegevens te halen.

Wat zijn enkele praktische toepassingen van datamining?▼

Datamining wordt gebruikt voor fraudedetectie, genomische sequencing, sociale netwerkanalyse en misdaadbeeldvorming. Veel bedrijven gebruiken het vooral om consumentenvoorkeuren te ontdekken en klantwaarde te bepalen.

Tags:

Gerelateerde artikelen die u mogelijk interesseren