ÎncepețiÎncepe gratuit

Trucuri și sfaturi pentru kNN II: sortarea variabilelor

Pe măsură ce algoritmul k-Nearest Neighbors parcurge variabilele din date pentru a le imputa, calculează distanțele dintre observații folosind celelalte variabile, unele dintre care au fost deja imputate în pașii anteriori. Asta înseamnă că, dacă variabilele aflate mai devreme în date au multe valori lipsă, calculul distanței ulterior se bazează în mare parte pe valori imputate. Acest lucru introduce zgomot în calculul distanței.

Din acest motiv, este o bună practică să sortezi variabilele crescător după numărul de valori lipsă înainte de a efectua imputarea kNN. Astfel, fiecare calcul al distanței se bazează pe cât mai multe date observate și pe cât mai puține date imputate posibil.

Hai să testăm acest lucru pe datele tao!

Acest exercițiu face parte din cursul

Gestionarea datelor lipsă prin imputare în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează numărul de valori lipsă din fiecare coloană a setului tao în prima parte a pipeline-ului.
  • Apoi, sortează variabilele crescător în funcție de numărul de valori lipsă, extrage numele acestora și atribuie rezultatul variabilei vars_by_NAs.
  • Folosește select() pentru a reordona variabilele din tao conform ordinii salvate în vars_by_NAs.
  • Efectuează imputarea k-Nearest Neighbors pe datele reordonate și atribuie rezultatul variabilei tao_imp.

Exercițiu interactiv practic

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

# Get tao variable names sorted by number of NAs
vars_by_NAs <- tao %>%
  ___ %>%
  colSums() %>%
  sort(decreasing = ___) %>% 
  names()

# Sort tao variables and feed it to kNN imputation
tao_imp <- tao %>% 
  select(___) %>% 
  ___()

tao_imp %>% 
	select(sea_surface_temp, humidity, humidity_imp) %>% 
	marginplot(delimiter = "imp")
Editează și rulează codul