Een cut-off instellen
We hebben je laten zien hoe het kiezen van een cut-off het verschil kan maken om een goede confusion matrix te krijgen. Nu leer je hoe je de voorspellingenvector omzet naar een vector met binaire waarden die de status van de lening aangeven. De functie ifelse() in R helpt je daarbij.
Als je ifelse() gebruikt in de context van een cut-off, krijg je iets als:
ifelse(predictions > 0.3, 1, 0)
In het eerste argument test je of een bepaalde waarde in de voorspellingenvector groter is dan 0.3. Als dit TRUE is, geeft R "1" terug (gespecificeerd in het tweede argument), als dit FALSE is, geeft R "0" terug (gespecificeerd in het derde argument), wat respectievelijk "default" en "geen default" voorstelt.
Deze oefening maakt deel uit van de cursus
Kredietrisicomodellering in R
Oefeninstructies
- De code voor het volledige logistic regression-model samen met de voorspellingenvector staat in je console.
- Gebruik een cut-off van 0.15 en maak de vector
pred_cutoff_15met de functieifelse()enpredictions_all_full. - Bekijk de confusion matrix met
table()(voer de echte waarden, dustest_set$loan_status, in als eerste argument).
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# The code for the logistic regression model and the predictions is given below
log_model_full <- glm(loan_status ~ ., family = "binomial", data = training_set)
predictions_all_full <- predict(log_model_full, newdata = test_set, type = "response")
# Make a binary predictions-vector using a cut-off of 15%
# Construct a confusion matrix