Belangrijkste features sorteren
Beslissingsbomen zijn onder andere erg populair vanwege hun uitlegbaarheid. Veel modellen kunnen nauwkeurige voorspellingen doen, maar beslissingsbomen kunnen ook het effect van de verschillende features op de target kwantificeren. Hier kunnen ze je vertellen welke features de sterkste en zwakste invloed hebben op de beslissing om het bedrijf te verlaten. In sklearn kun je deze informatie ophalen met het attribuut feature_importances_.
In deze oefening ga je de gekwantificeerde belangrijkheid van elke feature ophalen, ze opslaan in een pandas DataFrame (een Python-tabel) en ze sorteren van meest belangrijk naar minst belangrijk. De in de vorige oefeningen gebruikte Decision Tree Classifier model_ best is beschikbaar in je workspace, net als de variabelen features_test en features_train.
pandas is geïmporteerd als pd.
Deze oefening maakt deel uit van de cursus
HR-analytics: verloop van medewerkers voorspellen in Python
Oefeninstructies
- Gebruik het attribuut
feature_importances_om relatieve feature-belangrijkheden te berekenen - Maak een lijst met features
- Sla de resultaten op in een DataFrame met de functie
DataFrame(), waarbij de features rijen zijn en hun respectieve waarden een kolom - Sorteer de
relative_importances-DataFrame zodat de belangrijkste features bovenaan staan met de functiesort_values()en print het resultaat
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Calculate feature importances
feature_importances = model_best.____
# Create a list of features: done
feature_list = list(features)
# Save the results inside a DataFrame using feature_list as an index
relative_importances = pd.____(index=____, data=feature_importances, columns=["importance"])
# Sort values to learn most important features
relative_importances.____(by="importance", ascending=False)