Korrelerade variabler
De första 10 variablerna som läggs till i modellen är följande:
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
Som du ser läggs min_gift inte till. Betyder det att det är en dålig variabel? Du kan testa variabelns prestanda genom att använda den ensam i en modell och beräkna AUC. Hur förhåller sig AUC för min_gift till AUC för income_high? Du kan använda funktionen auc() för detta:
auc(variables, target, basetable)
Det kan hända att en bra variabel inte läggs till för att den är starkt korrelerad med en variabel som redan finns i modellen. Du kan testa detta genom att beräkna korrelationen mellan variablerna:
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
Den här övningen är en del av kursen
Introduktion till prediktiv analys i Python
Övningsinstruktioner
- Beräkna AUC för modellen med enbart variabeln
min_gift. - Beräkna AUC för modellen med enbart variabeln
income_high. - Beräkna korrelationen mellan variabeln
min_giftochmean_gift.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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))