在Netezza中,我运行了以下查询,将名义变量变为二项变量,并将它们相加:
sum(case when c.COUNTRYCODE = 'US' then 1 else 0 end) as US
我为多个国家和其他类似(分类)变量执行此操作。
然后,我用R来规范化数据:
normalize <- function(x) { return( (x - min(x)) / (max(x) - min(x)) ) }
我将它们放在R:
的数据框中all_n <- as.data.frame(lapply(all[,c(1:56)], normalize))
制作火车并测试数据。 接下来我运行这行代码:
m1<-knn(train=alltrain,test=alltest,cl=alltrain_target,k=53)
所有似乎都有效,并且对k近邻的预测似乎也做得很好,因为它预测它是正确的。我用
检查一下table(alltest_target,m1)
在R.
然而,这个方法是否正常,因为我规范化和(案例..)?或者我应该以不同的方式解决这个问题?那么规范化和(案例..)是否正确?