Stratifierat urval
Du vet nu att fördelningen av klassetiketter i kolumnen category_desc i datamängden volunteer är ojämn. Om du vill träna en modell för att förutsäga category_desc behöver du se till att modellen tränas på ett urval som är representativt för hela datamängden. Stratifierat urval är ett sätt att uppnå detta!
Den här övningen är en del av kursen
Förbehandling för maskininlärning i Python
Övningsinstruktioner
- Skapa en DataFrame med särdrag,
X, som innehåller alla kolumner utomcategory_desc. - Skapa en DataFrame med etiketter,
y, från kolumnencategory_desc. - Dela upp
Xochyi tränings- och testmängder och se till att klassfördelningen i etiketterna är densamma i båda mängderna. - Skriv ut etiketterna och antalen i
y_trainmed.value_counts().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Create a DataFrame with all columns except category_desc
X = volunteer.____(____, axis=____)
# Create a category_desc labels dataset
y = ____[[____]]
# Use stratified sampling to split up the dataset according to the y dataset
X_train, X_test, y_train, y_test = ____(____, ____, ____, random_state=42)
# Print the category_desc counts from y_train
print(____[____].____)