kNN ipuçları ve püfler II: değişkenleri sıralama
k-Nearest Neighbors algoritması, verideki değişkenler üzerinde dolaşarak onları doldururken, gözlemler arası mesafeleri diğer değişkenleri kullanarak hesaplar; bu değişkenlerin bir kısmı önceki adımlarda zaten tamamlanmıştır. Bu, eğer veride daha önce yer alan değişkenlerde çok sayıda eksik değer varsa, takip eden mesafe hesaplamasının büyük ölçüde tamamlanmış değerlere dayanacağı anlamına gelir. Bu da mesafe hesabına gürültü katar.
Bu nedenle, kNN ile tamamlama yapmadan önce değişkenleri eksik değer sayısına göre artan şekilde sıralamak iyi bir uygulamadır. Böylece her mesafe hesabı olabildiğince çok gözlenen veriye ve olabildiğince az tamamlanmış değere dayanır.
Hadi bunu tao verisi üzerinde deneyelim!
Bu egzersiz, kursun bir parçasıdır
R'de Atamaya Dayalı Eksik Veri Doldurma
Egzersiz talimatları
- İlk aşamada,
taoiçindeki her sütundaki eksik değerlerin sayısını hesapla. - Ardından, değişkenleri eksik değer sayısına göre artan şekilde sırala, adlarını çıkar ve sonucu
vars_by_NAsdeğişkenine ata. select()kullanaraktaodeğişkenlerinivars_by_NAsiçinde kayıtlı sıraya göre yeniden düzenle.- Yeniden sıralanmış veri üzerinde k-Nearest Neighbors tamamlama yap ve sonucu
tao_impdeğişkenine ata.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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")