kNN: kiat & trik II — mengurutkan variabel
Saat algoritma k-Nearest Neighbors melakukan iterasi atas variabel dalam data untuk mengimputasinya, algoritma menghitung jarak antarobservasi menggunakan variabel lain, sebagian di antaranya sudah diimputasi pada langkah sebelumnya. Artinya, jika variabel yang posisinya lebih awal dalam data memiliki banyak nilai hilang, maka perhitungan jarak berikutnya akan didasarkan pada banyak nilai hasil imputasi. Hal ini menambah derau pada perhitungan jarak.
Karena itu, praktik yang baik adalah mengurutkan variabel secara menaik berdasarkan jumlah nilai hilang sebelum melakukan imputasi kNN. Dengan cara ini, setiap perhitungan jarak didasarkan pada sebanyak mungkin data teramati dan sesedikit mungkin data terimputasi.
Mari kita coba pada data tao!
Latihan ini adalah bagian dari kursus
Menangani Data Hilang dengan Imputasi di R
Petunjuk latihan
- Hitung jumlah nilai hilang di setiap kolom
taopada bagian pertama pipeline. - Lalu, urutkan variabel secara menaik berdasarkan jumlah nilai hilang, ambil namanya, dan simpan hasilnya ke
vars_by_NAs. - Gunakan
select()untuk mengurutkan ulang variabeltaomenggunakan urutan yang disimpan divars_by_NAs. - Lakukan imputasi k-Nearest Neighbors pada data yang telah diurutkan ulang dan simpan hasilnya ke
tao_imp.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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")