Kom igångKom igång gratis

Ange ett gränsvärde

Vi har visat hur valet av gränsvärde kan avgöra om du får en bra konfusionsmatris. Nu ska du lära dig att omvandla prediktionsvektorn till en vektor med binära värden som anger lånets status. Funktionen ifelse() i R är ett bra verktyg här.

När du använder ifelse() med ett gränsvärde ser det ut ungefär så här:

ifelse(predictions > 0.3, 1, 0)

I det första argumentet testar du om ett visst värde i prediktionsvektorn är större än 0.3. Om det är TRUE returnerar R "1" (angivet i det andra argumentet), och om det är FALSE returnerar R "0" (angivet i det tredje argumentet) – där "1" representerar "fallissemang" och "0" representerar "inget fallissemang".

Den här övningen är en del av kursen

Kreditriskmodellering i R

Visa kurs

Övningsinstruktioner

  • Koden för den fullständiga logistiska regressionsmodellen tillsammans med prediktionsvektorn finns redan i din konsol.
  • Skapa vektorn pred_cutoff_15 med hjälp av funktionen ifelse() och predictions_all_full, med ett gränsvärde på 0.15.
  • Undersök konfusionsmatrisen med table() (ange de sanna värdena, det vill säga test_set$loan_status, som första argument).

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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
Redigera och kör kod