開始使用免費開始

保留遺漏資料

在某些情況下,輸入值「缺失」本身就是重要資訊。你可以用粗分類把 NA 保留在一個獨立的「missing」類別中。

粗分類能幫助你簡化資料,並提升模型的可解釋性。粗分類需要把數值依範圍分箱成數個群組。你可以利用這種分箱技巧,將所有的 NA 放進它們自己的分箱裡。

在影片中,我們用任職年資來示範粗分類的概念。右側的 R 指令碼已重現該範例的程式碼,你可以依此改寫,將變數 int_rate 進行粗分類。

本練習屬於課程

R 的信用風險建模

檢視課程

練習說明

  • 依照提供的程式碼進行必要修改,將 int_rate 做粗分類,並把結果存到新的變數 ir_cat
    • 先在 R 指令碼中把所有的 loan_data$emp_cat 改成 loan_data$ir_cat,同時把 loan_data$emp_length 改成 loan_data$int_rate
    • 接著,請將變數分箱為 "0-8""8-11""11-13.5""13.5+" 這些類別(取代原本的 "0-15""15-30""30-45""45+")。><= 的使用方式與影片完全相同。記得也要把條件判斷中的數字同步修改(15、30、45 分別改為 8、11、13.5)。
  • 使用 plot(loan_data$ir_cat) 檢視你新的變數 ir_cat

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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()
編輯並執行程式碼