Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Categorische Variabelen Beheren | Gegevens Preprocessen
Geavanceerde Technieken in Pandas

bookCategorische Variabelen Beheren

Nu werkt u met een dataset waarin geen ontbrekende waarden voorkomen. De NaN-waarden uit de kolom 'Age' zijn vervangen door het gemiddelde van de kolom, en de NaN-waarde uit de kolom 'Fare' is verwijderd. Het is nu tijd om te leren hoe categorische variabelen beheerd kunnen worden. Categorisch betekent dat ze enkele categorieën bevatten. Bijvoorbeeld, in de kolom 'Sex' zijn er 'male' en 'female'; of in de kolom 'Embarked' zijn er 'Q', 'S' en 'C'.

Wat moet er gedaan worden om het aantal waarden in elke categorie te berekenen of om informatie hierover te verkrijgen?

U kent al .loc[], .isin(), .between() en veel andere functies, maar in pandas is er een elegantere en handigere manier om dit te doen. Gebruik de functie .get_dummies(). Als voorbeeld passen we deze toe op de kolom 'Embarked'. Bekijk de implementatie en het resultaat (we tonen de namen van 5 willekeurige passagiers en de nieuwe kolommen die we hebben aangemaakt).

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/titanic3.csv', index_col = 0) data = pd.get_dummies(data, columns = ['Embarked']) print(data[['Name', 'Embarked_C', 'Embarked_Q', 'Embarked_S']].sample(5))
copy

Laten we een van de mogelijke uitvoerresultaten bekijken, specifiek een van de mogelijke combinaties van vijf willekeurig geselecteerde rijen. U kunt horizontaal door de tabel scrollen om alle kolommen te bekijken:

Uitleg:

Als resultaat splitste onze functie de kolom 'Embarked' in drie kolommen: 'Embarked_C', 'Embarked_Q' en 'Embarked_S'. In totaal zijn er drie categorieën. Elke passagier heeft zijn categorie in de kolom 'Embarked'. Onze functie maakt dus drie kolommen die overeenkomen met elke categorie, en vult voor elke passagier de rij van de kolom met 1 als de persoon oorspronkelijk gerelateerd was aan de betreffende geografie; anders wordt 0 ingevuld. Zo krijgen we slechts in één kolom een 1.

pd.get_dummies(data, columns = ['Embarked'])
  • pd.get_dummies() – deze functie zet categorische variabelen om in dummy-variabelen (1 of 0);
  • data – het data frame dat gebruikt wordt;
  • columns = ['Embarked'] – kolommen met categorische variabelen die omgezet moeten worden naar dummy-variabelen. Let op: het is verplicht om kolomnamen in een lijst te plaatsen.
Taak

Swipe to start coding

Je taak hier is om de kolom 'Sex' om te zetten naar een kolom met dummyvariabelen in plaats van categorische waarden. Geef vervolgens de som van de waarden in elke categorie weer.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 6
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Suggested prompts:

Can you explain why we use dummy variables instead of keeping the original categorical columns?

How can I use get_dummies() for multiple columns at once?

What should I do if my categorical column has many unique values?

close

Awesome!

Completion rate improved to 3.03

bookCategorische Variabelen Beheren

Veeg om het menu te tonen

Nu werkt u met een dataset waarin geen ontbrekende waarden voorkomen. De NaN-waarden uit de kolom 'Age' zijn vervangen door het gemiddelde van de kolom, en de NaN-waarde uit de kolom 'Fare' is verwijderd. Het is nu tijd om te leren hoe categorische variabelen beheerd kunnen worden. Categorisch betekent dat ze enkele categorieën bevatten. Bijvoorbeeld, in de kolom 'Sex' zijn er 'male' en 'female'; of in de kolom 'Embarked' zijn er 'Q', 'S' en 'C'.

Wat moet er gedaan worden om het aantal waarden in elke categorie te berekenen of om informatie hierover te verkrijgen?

U kent al .loc[], .isin(), .between() en veel andere functies, maar in pandas is er een elegantere en handigere manier om dit te doen. Gebruik de functie .get_dummies(). Als voorbeeld passen we deze toe op de kolom 'Embarked'. Bekijk de implementatie en het resultaat (we tonen de namen van 5 willekeurige passagiers en de nieuwe kolommen die we hebben aangemaakt).

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/titanic3.csv', index_col = 0) data = pd.get_dummies(data, columns = ['Embarked']) print(data[['Name', 'Embarked_C', 'Embarked_Q', 'Embarked_S']].sample(5))
copy

Laten we een van de mogelijke uitvoerresultaten bekijken, specifiek een van de mogelijke combinaties van vijf willekeurig geselecteerde rijen. U kunt horizontaal door de tabel scrollen om alle kolommen te bekijken:

Uitleg:

Als resultaat splitste onze functie de kolom 'Embarked' in drie kolommen: 'Embarked_C', 'Embarked_Q' en 'Embarked_S'. In totaal zijn er drie categorieën. Elke passagier heeft zijn categorie in de kolom 'Embarked'. Onze functie maakt dus drie kolommen die overeenkomen met elke categorie, en vult voor elke passagier de rij van de kolom met 1 als de persoon oorspronkelijk gerelateerd was aan de betreffende geografie; anders wordt 0 ingevuld. Zo krijgen we slechts in één kolom een 1.

pd.get_dummies(data, columns = ['Embarked'])
  • pd.get_dummies() – deze functie zet categorische variabelen om in dummy-variabelen (1 of 0);
  • data – het data frame dat gebruikt wordt;
  • columns = ['Embarked'] – kolommen met categorische variabelen die omgezet moeten worden naar dummy-variabelen. Let op: het is verplicht om kolomnamen in een lijst te plaatsen.
Taak

Swipe to start coding

Je taak hier is om de kolom 'Sex' om te zetten naar een kolom met dummyvariabelen in plaats van categorische waarden. Geef vervolgens de som van de waarden in elke categorie weer.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 6
single

single

some-alt