这是我创建的数据集:
ID <- c('X',1,2,3)
Age <- c(30,25,33,35)
Asset_Size <- c(60,50,60,80)
Income <- c(NA,100000,90000,150000)
chart1 <- data.frame(ID,Age,Asset_Size,Income)
如果K = 3且方法=“距离加权投票”,我试图找到客户X的收入缺失值。到目前为止,我已经用“未加权投票”的方法完成了这个,这就是它的样子等。
train <- chart1[2:4, 2:3]
test <- chart1[1, 2:3]
cl <- chart1[2:4, 1]
knn(train, test, cl, k = 3, prob = T)
如何使用K = 3和“距离加权投票”方法查找缺失值?谢谢
答案 0 :(得分:0)
require(VIM)
require(laeken)
kNN(chart1, k = 3, numFun = weightedMean, weightDist=TRUE)
Time difference of 0.008000851 secs
ID Age Asset_Size Income ID_imp Age_imp Asset_Size_imp Income_imp
1 X 30 60 106666.7 FALSE FALSE FALSE TRUE
2 1 25 50 100000.0 FALSE FALSE FALSE FALSE
3 2 33 60 90000.0 FALSE FALSE FALSE FALSE
4 3 35 80 150000.0 FALSE FALSE FALSE FALSE