CommencerCommencer gratuitement

Gérer les valeurs aberrantes

Dans le dernier exercice, vous avez vu qu’une visualisation des valeurs aberrantes peut être très utile lors d’un entretien Machine Learning. Une autre méthode pratique pour les traiter consiste à calculer le score Z, qui fixe un seuil pour les valeurs aberrantes à environ +/- 3 écarts types autour de la moyenne.

Dans cet exercice, vous allez utiliser le module scipy.stats pour calculer le score Z avec la fonction stats.zscore() et la fonction mstats.winsorize() pour remplacer les valeurs aberrantes grâce à une technique appelée Winsorization.

Rappelez-vous de la vidéo : les points au-dessus et/ou en dessous de 1,5 fois l’IQR doivent être suspectés comme valeurs aberrantes potentielles. Pour la dernière étape de cet exercice, cette valeur est 2120.

Les paquets nécessaires ont été importés pour vous, et les colonnes numériques et catégorielles de loan_data ont été sous‑sélectionnées et stockées sous numeric_cols et categoric_cols, respectivement.

Pipeline de Machine Learning

Cet exercice fait partie du cours

S’entraîner aux questions d’entretien en Machine Learning avec Python

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Print: before dropping
print(numeric_cols.mean())
print(numeric_cols.median())
print(numeric_cols.max())

# Create index of rows to keep
idx = (np.____(stats.____(____)) < 3).all(axis=1)

# Concatenate numeric and categoric subsets
ld_out_drop = pd.concat([numeric_cols.loc[____], categoric_cols.loc[____]], axis=1)

# Print: after dropping
print(ld_out_drop.mean())
print(ld_out_drop.median())
print(ld_out_drop.max())
Modifier et exécuter le code