CommencerCommencez gratuitement

Gérer les caractères indésirables (II)

Dans le dernier exercice, vous avez rapidement repéré, grâce à l’appel à df.head(), quels caractères posaient problème. Dans bien des cas, ce ne sera pas aussi évident. Il arrive souvent que des valeurs, enfouies au milieu d’une colonne, empêchent de convertir celle-ci en type numérique pour l’utiliser dans un modèle ou pour aller plus loin en ingénierie des caractéristiques.

Une manière de trouver ces valeurs consiste à forcer la colonne vers le type souhaité avec pd.to_numeric(), en transformant en NaN toutes les valeurs problématiques, puis à filtrer le DataFrame pour ne garder que les lignes contenant ces NaN.

Essayez de convertir la colonne RawSalary en float : l’opération échouera, car un caractère supplémentaire s’y cache. Trouvez ce caractère et supprimez-le afin que la colonne puisse être convertie en float.

Cet exercice fait partie du cours

<cours>Feature engineering pour le Machine Learning en Python</cours>
Voir le cours

Exercice interactif pratique

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

# Attempt to convert the column to numeric values
numeric_vals = ____(so_survey_df['RawSalary'], errors='coerce')

# Find the indexes of missing values
idx = ____

# Print the relevant rows
print(so_survey_df['RawSalary']____)
Modifier et exécuter le code