CommencezCommencez gratuitement

Traitement des valeurs aberrantes

Dans le dernier exercice, vous avez vu que la visualisation des valeurs aberrantes peut être très utile lors d'une entrevue en Machine Learning. Une autre façon pratique de les gérer consiste à calculer le score Z, qui fixe un seuil pour les valeurs aberrantes à environ +/- 3 écarts-types de la moyenne.

Dans cet exercice, vous utiliserez le module scipy.stats pour calculer le score Z avec la fonction stats.zscore() et la fonction mstats.winsorize() pour remplacer les valeurs aberrantes à l'aide d'une technique appelée Winsorization.

Rappelez-vous, d'après la vidéo, que les points situés au-dessus et/ou au-dessous de 1,5 fois l'IQR doivent être considérés comme des valeurs potentiellement aberrantes. Pour la dernière étape de cet exercice, cette valeur est 2120.

Les modules nécessaires ont été importés pour vous, et les colonnes numériques et catégorielles de loan_data ont été isolées et enregistrées sous numeric_cols et categoric_cols, respectivement.

Pipeline de Machine Learning

Cette activité fait partie du cours

S'exercer aux questions d'entrevue en Machine Learning avec Python

Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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