Calculer un bad rate pour un taux d’acceptation fixé
Dans la vidéo, vous avez appris à calculer le bad rate (ou le pourcentage de défauts) dans le portefeuille de prêts d’une banque à partir :
- d’un modèle donné
- du taux d’acceptation
Dans cet exercice, vous allez calculer le bad rate auquel une banque peut s’attendre en utilisant l’arbre élagué ptree_prior que vous avez ajusté précédemment, avec un taux d’acceptation de 80 %. Pour rappel, l’arbre est affiché à votre droite.
Cet exercice fait partie du cours
<cours>Modélisation du risque de crédit en R</cours>Instructions de l’exercice
- Dans le script, on vous fournit le code pour prédire la probabilité de défaut à l’aide de l’arbre élagué et de
test_set. Rappelez‑vous qu’avecpredict()sur un arbre, la probabilité de défaut se trouve dans la deuxième colonne. C’est pourquoi[,2]a été ajouté à la fonctionpredict(). - Obtenez le seuil (cut‑off) qui conduit à un taux d’acceptation de 80 % à partir de
prob_default_prior. Vous pouvez utiliser la fonction quantile() pour cela, en fixant le deuxième argument à 0.8. Nommez l’objetcutoff_prior. - Le code pour obtenir les prédictions binaires de défaut (0 ou 1) est fourni. Voir ifelse() ici. Nommez l’objet
bin_pred_prior_80. - Le code pour sélectionner les indicateurs de défaut de
test_setpour les prêts acceptés selon un taux d’acceptation de 80 % est fourni. - Calculez le pourcentage de défauts (ou « bad rate ») pour les prêts acceptés. Il s’agit du nombre d’occurrences de
1dansaccepted_status_prior_80, divisé par le nombre total d’éléments de ce vecteur. Affichez le résultat dans votre console R.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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