Met Alteryx het EK voetbal 2024 voorspellen
Het EK voetbal staat op het punt van beginnen. Hier en daar worden op werk EK pouletjes ingevuld. Zo ook bij Infotopics. Om goed beslagen ten ijs te komen stelde onze consultant Wouter Karsten zichzelf de vraag: “Kun je op basis van data het EK voetbal voorspellen?”.
Eerder heeft Wouter al eens onderzocht wat de meest ideale opstelling is voor Coach van het jaar, dus deze uitdaging moest ook mogelijk zijn in Alteryx.
Lees hieronder wie volgens de data het EK gaat winnen!
De juiste data en tool
Wat heb ik nodig om met dit vraagstuk aan de slag te gaan? Het meest logische antwoord is natuurlijk: data. Online vond ik de dataset “International football results from 1872 to 2024”. Zoals de naam al doet vermoeden bevat deze dataset alle voetbaluitslagen tussen landenteams. Interessant en waarschijnlijk behoorlijk bruikbaar.
Naast de data heb ik een tool nodig waarmee ik predictive analyses kan uitvoeren. Met Alteryx hebben we een tool in huis die hier uitermate geschikt voor is.
Hoe moet de data eruitzien in Alteryx?
We hebben de data en we hebben de tool. De vervolgstap is aan de slag in Alteryx: de data opschonen en gereed maken voor analyse.
Maar voordat ik losga stel ik mijzelf de vraag: “hoe moet de data er uitzien?”. Om die vraag te beantwoorden moet ik weten wat ik uiteindelijk ga doen met de verzamelde data. Eigenlijk wil ik de volgende vraag beantwoorden: “Kan het model voorspellen welk land wint wanneer ik de wedstrijden van het EK door het model heen trek?”. Dit type voorspelling is een binaire voorspelling, een land wint of verliest (een gelijkspel laat ik voor deze analyse buiten beschouwing omdat dit immers alleen in de poulefase van kracht is).
Om een binair model dit te laten voorspellen, wordt gekeken naar voorspellende kenmerken van één regel aan data in de dataset. De data ziet er als volgt uit:
De hoeveelheid voorspellende kenmerken in deze dataset lijkt gevoelsmatig wat mager. Daarom verrijk ik de data met de ranking van de deelnemende landen uit deze dataset: “FIFA World Ranking 1992-2024”.
Een wedstrijd is gespeeld op een bepaalde datum. De ranking per land is op [Maand] en [Jaar] niveau. Op dit niveau join ik de data in Alteryx eenvoudig aan elkaar. Mijn data wordt met de volgende kolommen verrijkt:
Nu worden er voor een gespeelde wedstrijd dus meer kenmerken meegenomen in het voorspellende model.
Omdat ik van wedstrijden die voor 1992 gespeeld zijn geen ranking heb, worden in de analyse alleen data meegenomen van 1992 tot en met 2024.
Voorspellende analyses met Alteryx
Alteryx heeft veel verschillende predictive tools. Gezien we voor ons vraagstuk een model nodig hebben dat een binaire voorspelling doet, testen we een selectie van de beschikbare modellen. Dit zijn “Decision Tree”, “Naive Bayes Classifier”, “Logistic Regression”, “Forest Model” en “Boosted Model”.
Met de “Create Samples” tool in Alteryx knippen we de dataset op in 3 delen:
- Estimation sample data (34%)
- Validation sample data (33%)
- Holdout data (33%)
Met de “Estimation sample data” train ik de verschillende modellen. Dit wil zeggen dat het model aan de hand van de kenmerken op één regel met data leert of een land een wedstrijd wint of verliest.
Vervolgens gebruiken we de “Score” tool om de uitkomst van het model te testen op de “Validation sample data”.
Dit houdt in dat de verschillende modellen de winnaar van een reeds gespeelde wedstrijd proberen te voorspellen. Het mooie hieraan is dat de wedstrijd al gespeeld is en de uitslag dus al bekend is. Je kunt dus controleren welk model het meest accuraat een wedstrijd kan voorspellen. Op basis hiervan kies je voor het meest accurate model.
In dit geval heeft de ”Logistic Regression” tool 66% van de wedstrijden correct voorspeld.
Data voorspelt: De winnaar van het EK 2024 is…
Vervolgens haal ik alle gespeelde wedstrijden van 1992 tot en met 2024 van de deelnemende landen door het “Logistic Regression” model. De uitkomst van dit model score ik aan de wedstrijden uit de poulefase van het EK. In deze stap wordt per wedstrijd uitgerekend wat de meest waarschijnlijke winnaar is.
Per gewonnen wedstrijd ken ik punten toe aan een land. Dit resulteert in de volgende voorspelling van eindstanden per groep:
Op basis van deze eindstanden gaan we door naar de Knock-out fase van het toernooi. Ook dit jaar is er op het EK een aparte ranglijst voor de nummers 3 uit elke poule (net als op de EK’s van 2016 en 2021). Omdat dit lastig te simuleren was in het model, omdat het uitgaat van een winnaar of verliezer per wedstrijd (en geen exacte wedstrijduitslagen voorspelt), heb ik ervoor gekozen om de nummers 3 met de hoogste FIFA-ranking door te laten gaan naar de volgende ronde. Wanneer ik de wedstrijden van de laatste 16 door het model haal, komen hier de volgende winnaars uit:
Deze landen gaan de strijd aan in de kwartfinale waarbij Nederland het opneemt tegen Portugal, deze wedstrijd zal weer garant staan voor een kaartenspektakel:
Helaas voor Nederland sneuvelen ze in de kwartfinale tegen Portugal.
In de halve finale wordt topfavoriet Frankrijk uitgeschakeld door Spanje:
De finale gaat tussen Spanje en regerend Europeeskampioen Italië. Spanje trekt in deze finale aan het langste eind en mag zich de nieuwe Europeeskampioen noemen:
‘De bal is rond’
Het blijft natuurlijk voorspellen. Alteryx rekent de meest waarschijnlijke winnaar per wedstrijd uit op basis van resultaten en ranking uit het verleden. Maar zoals de aloude voetbalwijsheid klinkt: “De bal is rond”. Er kunnen natuurlijk altijd verrassingen zijn tijdens een EK. Desalniettemin ben ik erg benieuwd hoe dicht de voorspelling in de buurt komt van het daadwerkelijke toernooiverloop.
Ben je benieuwd hoe je predictive analytics toe kunt passen binnen je eigen werk? Neem gerust contact met ons op!
Disclaimer: Dit is de door ons gekozen route. Uiteraard kun je nog veel meer voorspellende kenmerken toevoegen en het model zo complex maken als je zelf wilt. Het doel van deze blog is om mensen te inspireren om op een laagdrempelige manier aan de slag te gaan met predictive analytics.