Data Science Academy · Les

Categorische kolommen coderen

De basis van one-hot- en labelcodering

Les 2 van 413 stappen

Categorische kolommen coderen is een gratis Data Science Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Data Science Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Data Science Academy bevat in totaal 4 lessen.

Waarom codering belangrijk is

De meeste modellen begrijpen alleen getallen, terwijl je gegevens vol staan met woorden zoals rood of blauw. Codering zet die labels om in getallen waar een model van kan leren. 🔢

Nominaal tegenover ordinaal

Sommige categorieën hebben een volgorde, zoals klein, middelgroot en groot. Andere, zoals stadsnamen, hebben die niet. Deze volgorde bepaalt welke codering eerlijk is.

Labelcodering

Labelcodering wijst aan elke categorie een geheel getal toe: rood wordt 0 en blauw wordt 1. Eenvoudig, maar het creëert een volgorde die misschien niet echt bestaat.

from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
codes = le.fit_transform(df['color'])

De valkuil van een verzonnen volgorde

Als blauw 1 is en groen 2, kan een model denken dat groen groter is dan blauw. Bij nominale gegevens kan die onjuiste rangorde de nauwkeurigheid schaden.

One-hotcodering

One-hot encoding maakt voor elke categorie een nieuwe kolom, met de waarde 1 of 0. Geen verzonnen volgorde, maar duidelijke ja-of-nee-vlaggen.

get_dummies in pandas

De snelste manier voor one-hot encoding in pandas is get_dummies. Geef het een kolom en het zet elke categorie om in een eigen kolom met 0 of 1.

dummies = pd.get_dummies(df['color'])

Vermijd de dummyvalkuil

De kolommen zijn perfect gecorreleerd, dus verwijder er één met drop_first. Zo blijven lineaire modellen stabiel en voorkom je overbodige informatie.

pd.get_dummies(df['color'], drop_first=True)

OneHotEncoder voor pipelines

Gebruik voor modellen bij voorkeur de OneHotEncoder van scikit-learn. Die onthoudt welke categorieën hij heeft geleerd, zodat train- en testgegevens perfect op elkaar blijven aansluiten.

from sklearn.preprocessing import OneHotEncoder
enc = OneHotEncoder(handle_unknown='ignore')

Codeer volgorde bewust

Wanneer er echt een volgorde is, leg je die zelf vast, zodat klein tot groot 1 tot 3 wordt. Een ordinal-mapping behoudt de betekenis.

order = {'small': 1, 'medium': 2, 'large': 3}
df['size_num'] = df['size'].map(order)

Let op hoge cardinaliteit

One-hot encoding van een kolom met duizenden waarden groeit uit tot duizenden kolommen. Overweeg bij hoge cardinaliteit eerst zeldzame waarden te groeperen.

Behandel onbekende categorieën

Nieuwe gegevens kunnen labels bevatten die je encoder nog nooit heeft gezien. Bereid je hierop voor, zodat een onbekende categorie je voorspellingsstap niet laat crashen.

Korte controle

Je kleurkolom heeft geen natuurlijke volgorde. Welke codering voorkomt dat je een valse rangorde verzint?

Samenvatting: codering

Je hebt woorden omgezet in getallen: one-hot voor categorieën zonder volgorde, ordinal-mappings voor een echte volgorde en label encoding alleen wanneer de volgorde niet van belang is. 🎉

Gratis beginnen

Leer Python met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
30
Lessen
120

Veelgestelde vragen

Is de les “Categorische kolommen coderen” gratis?

Ja — de volledige tekst van “Categorische kolommen coderen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Data Science Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Data Science Academy bevat in totaal 4 lessen.

Wat leer ik in “Categorische kolommen coderen”?

De basis van one-hot- en labelcodering Je oefent met Data Science Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Data Science Academy te beginnen?

Ervaring vooraf is niet nodig. Data Science Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Categorische kolommen coderen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Data Science Academy?

Ja. Elke les over Data Science Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Getallen indelen in categorieën
  2. Categorische kolommen coderen
  3. Getallen schalen en normaliseren
  4. Kenmerken maken uit datums en tekst
← Terug naar Data Science Academy