Sortowanie ważnych cech
Drzewa decyzyjne cieszą się dużą popularnością między innymi ze względu na swoją interpretowalność. Wiele modeli potrafi generować trafne prognozy, ale drzewa decyzyjne potrafią też ilościowo określić wpływ poszczególnych cech na zmienną docelową. W tym przypadku model może wskazać, które cechy mają największy i najmniejszy wpływ na decyzję pracownika o odejściu z firmy. W sklearn możesz uzyskać te informacje za pomocą atrybutu feature_importances_.
W tym ćwiczeniu obliczysz ważność każdej cechy, zapiszesz wyniki w DataFrame biblioteki pandas (czyli w tabeli w stylu Pythona), a następnie posortuj je od najważniejszej do najmniej ważnej. Klasyfikator drzewa decyzyjnego model_best użyty w poprzednich ćwiczeniach jest dostępny w twoim środowisku, podobnie jak zmienne features_test i features_train.
pandas zostało zaimportowane jako pd.
To ćwiczenie jest częścią kursu
HR Analytics: Przewidywanie rotacji pracowników w Pythonie
Instrukcje do ćwiczenia
- Użyj atrybutu
feature_importances_, aby obliczyć względną ważność cech - Utwórz listę cech
- Zapisz wyniki w DataFrame za pomocą funkcji
DataFrame(), gdzie cechy są wierszami, a ich wartości – kolumną - Posortuj DataFrame
relative_importances, aby najważniejsze cechy znalazły się na górze, używając funkcjisort_values(), i wyświetl wynik
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)