Een bad rate berekenen bij een vast acceptatiepercentage
In de video heb je geleerd hoe je de bad rate (ofwel het percentage wanbetalingen) in de kredietportefeuille van een bank berekent op basis van:
- een specifiek model
- het acceptatiepercentage
In deze oefening bereken je de bad rate die een bank kan verwachten bij gebruik van de gesnoeide boom ptree_prior die je eerder hebt gefit, en een acceptatiepercentage van 80%. Ter herinnering: de boom staat rechts afgebeeld.
Deze oefening maakt deel uit van de cursus
Kredietrisicomodellering in R
Oefeninstructies
- In het script staat code om met de gesnoeide boom en
test_setvoorspellingen te maken voor de kans op wanbetaling. Onthoud dat wanneer jepredict()voor een boom gebruikt, de kans op wanbetaling in de tweede kolom staat. Daarom is[,2]toegevoegd aan depredict()-functie. - Bepaal de cut-off die leidt tot een acceptatiepercentage van 80% met
prob_default_prior. Je kunt hiervoor de quantile()-functie gebruiken en het tweede argument op 0.8 zetten. Geef dit de naamcutoff_prior. - De code om de binaire default-voorspellingen (0 of 1) te verkrijgen is gegeven. Zie ifelse() hier. Noem het object
bin_pred_prior_80. - De code om de default-indicatoren van
test_sette selecteren voor de geaccepteerde leningen volgens een acceptatiepercentage van 80% is gegeven. - Bereken het percentage wanbetalingen (de "bad rate") voor de geaccepteerde leningen. Dit is het aantal voorkomens van
1inaccepted_status_prior_80, gedeeld door het totaal aantal elementen in deze vector. Print de uitkomst naar je R-console.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Make predictions for the probability of default using the pruned tree and the test set.
prob_default_prior <- predict(ptree_prior, newdata = test_set)[ ,2]
# Obtain the cutoff for acceptance rate 80%
# Obtain the binary predictions.
bin_pred_prior_80 <- ifelse(prob_default_prior > cutoff_prior, 1, 0)
# Obtain the actual default status for the accepted loans
accepted_status_prior_80 <- test_set$loan_status[bin_pred_prior_80 == 0]
# Obtain the bad rate for the accepted loans