Discretizar todas las variables
En lugar de discretizar las variables continuas una por una, es más fácil hacerlo de forma automática. Para obtener una lista de todas las columnas en Python, puedes usar
variables = basetable.columns
Solo deben discretizarse las variables continuas. Puedes verificar si una variable debe discretizarse comprobando si tiene más de un número predefinido de valores distintos.
Este ejercicio forma parte del curso
Introducción al análisis predictivo en Python
Instrucciones del ejercicio
- Crea una lista
variablesque contenga todos los nombres de columnas de la basetable. - Crea un bucle que revise todas las variables de la lista
variables. - Completa la sentencia
ifpara que solo se discreticen las variables con más de 5 valores distintos. - Agrupa las variables continuas en 10 intervalos usando el método
qcut.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Print the columns in the original basetable
print(basetable.columns)
# Get all the variable names except "target"
variables = list(____.____)
variables.remove("target")
# Loop through all the variables and discretize in 10 bins if there are more than 5 different values
for variable in ____:
if len(basetable.groupby(____))>____:
new_variable = "disc_" + variable
basetable[new_variable] = pd.qcut(basetable[____], ____)
# Print the columns in the new basetable
print(basetable.columns)