Fehlende Daten beibehalten
In manchen Situationen ist es bereits wichtige Information, dass ein Input fehlt. NAs können mithilfe einer groben Klassifikation in einer eigenen Kategorie „missing“ behalten werden.
Grobes Klassifizieren hilft dir, deine Daten zu vereinfachen und die Interpretierbarkeit deines Modells zu verbessern. Dabei fasst du Werte in Gruppen zusammen, die bestimmte Wertebereiche abdecken. Mit dieser Binning-Technik kannst du alle NAs in einen eigenen „Bin“ legen.
Im Video haben wir die Idee der groben Klassifikation für die Beschäftigungsdauer gezeigt. Der Code aus diesem Beispiel wurde im R-Skript rechts übernommen und kann angepasst werden, um die Variable int_rate grob zu klassifizieren.
Diese Übung ist Teil des Kurses
<Kurs>Kreditrisikomodellierung in R</Kurs>Übungsanweisungen
- Nimm die notwendigen Änderungen am bereitgestellten Code vor, um
int_rategrob zu klassifizieren, und speichere das Ergebnis in einer neuen Variable namensir_cat.- Ersetze zunächst
loan_data$emp_catdurchloan_data$ir_catim R-Skript und ersetze außerdemloan_data$emp_lengthdurchloan_data$int_rate. - Als Nächstes sollen die Variablen in die Kategorien
"0-8","8-11","11-13.5"und"13.5+"eingeteilt werden (anstelle von"0-15","15-30","30-45"und"45+"). Die Verwendung von>und<=ist genau wie im Video. Denk daran, auch die Zahlen in den Bedingungen zu ändern (15, 30 und 45 müssen entsprechend zu 8, 11 und 13.5 werden).
- Ersetze zunächst
- Sieh dir deine neue Variable
ir_catmitplot(loan_data$ir_cat)an.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Make the necessary replacements in the coarse classification example below
loan_data$emp_cat <- rep(NA, length(loan_data$emp_length))
loan_data$emp_cat[which(loan_data$emp_length <= 15)] <- "0-15"
loan_data$emp_cat[which(loan_data$emp_length > 15 & loan_data$emp_length <= 30)] <- "15-30"
loan_data$emp_cat[which(loan_data$emp_length > 30 & loan_data$emp_length <= 45)] <- "30-45"
loan_data$emp_cat[which(loan_data$emp_length > 45)] <- "45+"
loan_data$emp_cat[which(is.na(loan_data$emp_length))] <- "Missing"
loan_data$emp_cat <- as.factor(loan_data$emp_cat)
# Look at your new variable using plot()