Tratamiento de caracteres sueltos (II)
En el último ejercicio, pudiste identificar rápidamente con la llamada a df.head() qué caracteres estaban causando problemas. En muchos casos no será tan evidente. A menudo habrá valores más abajo en una columna que impedirán convertirla a un tipo numérico para poder usarla en un modelo o en más ingeniería de atributos.
Una forma de encontrar estos valores es forzar la columna al tipo de dato deseado usando pd.to_numeric(), convirtiendo en NaN cualquier valor que cause problemas y, después, filtrando el DataFrame por las filas que contienen esos NaN.
Intenta convertir la columna RawSalary a float y verás que falla porque ahora contiene un carácter adicional. Encuentra ese carácter y elimínalo para que la columna pueda convertirse a float.
Este ejercicio forma parte del curso
Ingeniería de características para Machine Learning en Python
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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']____)