ÎncepețiÎncepe gratuit

Păstrarea datelor lipsă

În anumite situații, faptul că o valoare lipsește reprezintă în sine o informație importantă. Valorile NA pot fi păstrate într-o categorie separată, numită „lipsă", prin clasificare grosieră.

Clasificarea grosieră îți permite să simplifici datele și să îmbunătățești interpretabilitatea modelului. Aceasta presupune gruparea valorilor în intervale. Poți folosi această tehnică de grupare pentru a plasa toate valorile NA într-un interval propriu.

În videoclip, am ilustrat ideea de clasificare grosieră pentru durata angajării. Codul din acel exemplu a fost reprodus în scriptul R din dreapta și poate fi adaptat pentru clasificarea grosieră a variabilei int_rate.

Acest exercițiu face parte din cursul

Modelarea riscului de credit în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Fă modificările necesare în codul furnizat pentru a clasifica grosier int_rate, salvând rezultatul într-o nouă variabilă numită ir_cat.
    • Mai întâi, înlocuiește loan_data$emp_cat cu loan_data$ir_cat oriunde apare în scriptul R, și înlocuiește loan_data$emp_length cu loan_data$int_rate.
    • Apoi, variabilele trebuie grupate în categoriile "0-8", "8-11", "11-13.5" și "13.5+" (înlocuind "0-15","15-30","30-45" și "45+"). Folosirea operatorilor > și <= este exact ca în videoclip. Ai grijă să modifici și numerele din instrucțiunile condiționale (15, 30 și 45 trebuie înlocuite cu 8, 11 și, respectiv, 13,5).
  • Vizualizează noua variabilă ir_cat folosind plot(loan_data$ir_cat).

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul