Variables corrélées
Les 10 premières variables ajoutées au modèle sont les suivantes :
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
Comme vous pouvez le voir, min_gift n’a pas été ajoutée. Est-ce pour autant une mauvaise variable ? Vous pouvez évaluer sa performance en l’utilisant seule dans un modèle et en calculant l’AUC. Comment l’AUC de min_gift se compare-t-elle à celle de income_high ? Pour cela, vous pouvez utiliser la fonction auc() :
auc(variables, target, basetable)
Il peut arriver qu’une bonne variable ne soit pas ajoutée parce qu’elle est fortement corrélée à une variable déjà présente dans le modèle. Vous pouvez le tester en calculant la corrélation entre ces variables :
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
Cet exercice fait partie du cours
Introduction à l’analytique prédictive en Python
Instructions
- Calculez l’AUC du modèle en utilisant uniquement la variable
min_gift. - Calculez l’AUC du modèle en utilisant uniquement la variable
income_high. - Calculez la corrélation entre les variables
min_giftetmean_gift.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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))