Trier les caractéristiques importantes
Entre autres raisons, les arbres de décision sont très populaires pour leur interprétabilité. Plusieurs modèles peuvent offrir des prédictions exactes, mais les arbres de décision peuvent en plus quantifier l'effet des différentes caractéristiques sur la cible. Ici, ils peuvent vous indiquer quelles caractéristiques ont les impacts les plus forts et les plus faibles sur la décision de quitter l'entreprise. Dans sklearn, vous pouvez obtenir cette information en utilisant l'attribut feature_importances_.
Dans cet exercice, vous allez calculer l'importance quantifiée de chaque caractéristique, l'enregistrer dans un DataFrame pandas (un tableau en Python) et les trier de la plus importante à la moins importante. Le classificateur d'arbre de décision model_ best utilisé dans les exercices précédents est disponible dans votre espace de travail, ainsi que les variables features_test et features_train.
pandas a été importé sous le nom pd.
Cette activité fait partie du cours
Analytique RH : prédire le roulement du personnel avec Python
Instructions de l’exercice
- Utilisez l'attribut
feature_importances_pour calculer les importances relatives des caractéristiques - Créez une liste de caractéristiques
- Enregistrez les résultats dans un DataFrame avec la fonction
DataFrame(), où les caractéristiques sont des lignes et leurs valeurs respectives forment une colonne - Triez le DataFrame
relative_importancespour obtenir les caractéristiques les plus importantes en haut à l'aide de la fonctionsort_values()et affichez le résultat
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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)