Skorelowane zmienne
Pierwsze 10 zmiennych dodanych do modelu to:
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
Jak widać, min_gift nie została dodana. Czy oznacza to, że jest to słaba zmienna? Możesz sprawdzić jej jakość, budując model z tą jedną zmienną i obliczając AUC. Porównaj AUC zmiennej min_gift z AUC zmiennej income_high. Użyj do tego funkcji auc():
auc(variables, target, basetable)
Zdarza się, że dobra zmienna nie zostaje dodana do modelu, ponieważ jest silnie skorelowana ze zmienną już w nim obecną. Możesz to sprawdzić, obliczając korelację między tymi zmiennymi:
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
To ćwiczenie jest częścią kursu
Wprowadzenie do analizy predykcyjnej w Pythonie
Instrukcje do ćwiczenia
- Oblicz AUC modelu używającego wyłącznie zmiennej
min_gift. - Oblicz AUC modelu używającego wyłącznie zmiennej
income_high. - Oblicz korelację między zmienną
min_gifta zmiennąmean_gift.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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))