Aan de slagGa gratis aan de slag

Gecorreleerde variabelen

De eerste 10 variabelen die aan het model worden toegevoegd, zijn de volgende:

['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']

Zoals je ziet, is min_gift niet toegevoegd. Betekent dit dat het een slechte variabele is? Je kunt de prestaties van de variabele testen door haar als enige variabele in een model te gebruiken en de AUC te berekenen. Hoe verhoudt de AUC van min_gift zich tot de AUC van income_high? Hiervoor kun je de functie auc() gebruiken:

auc(variables, target, basetable)

Het kan gebeuren dat een goede variabele niet wordt toegevoegd omdat deze sterk gecorreleerd is met een variabele die al in het model zit. Je kunt dit testen door de correlatie tussen deze variabelen te berekenen:

import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]

Deze oefening maakt deel uit van de cursus

Introductie tot Predictive Analytics in Python

Cursus bekijken

Oefeninstructies

  • Bereken de AUC van het model met alleen de variabele min_gift.
  • Bereken de AUC van het model met alleen de variabele income_high.
  • Bereken de correlatie tussen de variabele min_gift en mean_gift.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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))
Code bewerken en uitvoeren