Korelované proměnné
Prvních 10 proměnných přidaných do modelu je následujících:
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
Jak vidíš, min_gift přidána nebyla. Znamená to, že je to špatná proměnná? Výkon proměnné můžeš otestovat tak, že ji použiješ jako jedinou proměnnou v modelu a vypočítáš AUC. Jak si stojí AUC proměnné min_gift ve srovnání s AUC proměnné income_high? K tomu slouží funkce auc():
auc(variables, target, basetable)
Může se stát, že dobrá proměnná není přidána, protože je silně korelovaná s proměnnou, která už v modelu je. Tuto korelaci můžeš ověřit takto:
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
Toto cvičení je součástí kurzu
Introduction to Predictive Analytics in Python
Pokyny k cvičení
- Vypočítej AUC modelu obsahujícího pouze proměnnou
min_gift. - Vypočítej AUC modelu obsahujícího pouze proměnnou
income_high. - Vypočítej korelaci mezi proměnnými
min_giftamean_gift.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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))