ComenzarEmpieza gratis

Seleccionar la siguiente mejor variable

El método de selección de variables forward stepwise empieza con un conjunto vacío y avanza por pasos, añadiendo en cada paso la siguiente mejor variable. Para ayudarte a implementarlo, ya tienes dos funciones muy prácticas.

La función auc calcula, para un conjunto de variables variables, el AUC del modelo que las usa como predictores. La función next_best calcula qué variable se debería añadir en el siguiente paso a la lista de variables.

En este ejercicio, vas a experimentar con estas funciones para entender mejor su finalidad. Calcularás el AUC de un conjunto de variables dado, decidirás qué variable conviene añadir a continuación y comprobarás que esto efectivamente conduce a un AUC óptimo.

Este ejercicio forma parte del curso

Introducción al análisis predictivo en Python

Ver curso

Instrucciones del ejercicio

  • La función auc ya está implementada. Calcula el AUC de un modelo que usa "max_gift", "mean_gift" y "min_gift" como predictores. Debes pasar estas variables en una lista como primer argumento de la función auc.
  • La función next_best ya está implementada. Calcula qué variable se debería añadir a continuación, sabiendo que "max_gift", "mean_gift" y "min_gift" están actualmente en el modelo, y que "age" y "gender_F" son los predictores candidatos. El primer argumento de next_best es una lista con las variables actuales y el segundo es una lista con los predictores candidatos.
  • Calcula el AUC de un modelo que usa "max_gift", "mean_gift", "min_gift" y "age" como predictores.
  • Calcula el AUC de un modelo que usa "max_gift", "mean_gift", "min_gift" y "gender_F" como predictores.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Calculate the AUC of a model that uses "max_gift", "mean_gift" and "min_gift" as predictors
auc_current = ____([____, ____, ____], ["target"], basetable)
print(round(auc_current,4))

# Calculate which variable among "age" and "gender_F" should be added to the variables "max_gift", "mean_gift" and "min_gift"
next_variable = ____([____, ____, ____], [____, ____], ["target"], basetable)
print(next_variable)

# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "age" as predictors
auc_current_age = ____([____, ____, ____, ____], ["target"], basetable)
print(round(auc_current_age,4))

# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "gender_F" as predictors
auc_current_gender_F = ____([____], ["target"], basetable)
print(round(auc_current_gender_F,4))
Editar y ejecutar código