Aan de slagGa gratis aan de slag

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:

  1. een specifiek model
  2. 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

Cursus bekijken

Oefeninstructies

  • In het script staat code om met de gesnoeide boom en test_set voorspellingen te maken voor de kans op wanbetaling. Onthoud dat wanneer je predict() voor een boom gebruikt, de kans op wanbetaling in de tweede kolom staat. Daarom is [,2] toegevoegd aan de predict()-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 naam cutoff_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_set te 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 1 in accepted_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

Code bewerken en uitvoeren