Variables correlacionadas
Las primeras 10 variables que se añaden al modelo son las siguientes:
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
Como puedes ver, min_gift no se añade. ¿Significa esto que es una mala variable? Puedes evaluar su rendimiento usándola en un modelo como única variable y calculando el AUC. ¿Cómo se compara el AUC de min_gift con el AUC de income_high? Para ello, puedes usar la función auc():
auc(variables, target, basetable)
Puede ocurrir que una buena variable no se añada porque está altamente correlacionada con otra variable que ya está en el modelo. Puedes comprobarlo calculando la correlación entre estas variables:
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
Este ejercicio forma parte del curso
Introducción al análisis predictivo en Python
Instrucciones del ejercicio
- Calcula el AUC del modelo usando solo la variable
min_gift. - Calcula el AUC del modelo usando solo la variable
income_high. - Calcula la correlación entre la variable
min_giftymean_gift.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
import numpy as np
# Calculate the AUC of the model using min_gift only
auc_min_gift = auc([____], ["target"], ____)
print(round(auc_min_gift,2))
# Calculate the AUC of the model using income_high only
auc_income_high = ____([____], [____], ____)
print(round(auc_income_high,2))
# Calculate the correlation between min_gift and mean_gift
correlation = np.corrcoef(basetable["____"], basetable["____"])[0,1]
print(round(correlation,2))