De modus berekenen met Python
Python is uitermate geschikt voor het bewerken van data. Het berekenen van de modus is een veelgebruikte handeling om te verrichten op een dataset. Er zijn verschillende manieren mogelijk waarop je de modus kunt berekenen. In onderstaande voorbeelden maken we voor het gemak overal gebruik van dezelfde dataset:dataset = [4, 15, 15, 12, 20, 3, 7, 6]
Zo bereken je de modus
De modus is het getal (of zijn de getallen) die het vaakst voorkomen binnen de gegeven dataset. Houd er rekening mee dat wanneer alle getallen slechts eenmalig aanwezig zijn binnen de dataset, of wanneer de set leeg is dan is het niet mogelijk om een modus te vinden. Bij de onderstaande oplossing maken we gebruik van de counter
functie uit de collections module. Zorg er dus voor dat je de collections
module installeert voordat je deze oplossing toepast. Eerst telt de len()
method het aantal items in de dataset. Daarna verandert de dict()
method de lijst in een dictionary. Vervolgens telt men het aantal verschillende aantal waarden in de dictionary. Tot slot wordt er gekeken of er een waarde is die vaker voorkomt dan een ander. Indien ja wordt deze waarde uitgeprint, indien nee dan toont men de boodschap dat er geen modus aanwezig is.
from collections import Counter
dataset = [4, 15, 15, 12, 20, 3, 7, 6]
lengte = len(dataset)
data = Counter(dataset)
vind_modus = dict(data)
vind_modus = [k for k, v in vind_modus.items() if v == max(list(data.values()))]
if len(vind_modus) == lengte:
vind_modus = "Er is geen modus gevonden"
else:
vind_modus = "De modus is / zijn: " + ', '.join(map(str, vind_modus))
print(vind_modus)
Bovenstaand stuk code is de meest basale oplossing die je kunt toepassen om de modus te berekenen. Het is echter belangrijk om te begrijpen wat er in dit proces met een dataset gebeurt.
De modus berekenen met de Statistics Library
Een eenvoudige manier om de modus te achterhalen is door gebruik te maken van de Statistics library. In deze library kun je gebruikmaken van de mode
functie. Door de dataset in de parameter mee te geven kun je gewenste getallen eenvoudig herleiden.
import statistics
dataset = [4, 15, 15, 12, 20, 3, 7, 6]
modus = statistics.mode(dataset)
print("De modus is: " + str(modus))
Bovenstaande optie is verreweg een van de snelste en netste manieren om de waarden te berekenen. Echter kunnen er zich in de praktijk situaties voor doen waarin bovenstaande oplossing niet toepasbaar is. Benieuwd naar meer populaire bewerkingen op een dataset? Lees hier over het vinden van de mediaan of het gemiddelde. Wil je aan de slag gaan met echte datasets? Bekijk dan de UCI Machine Learning Repository.