jinxingche的个人博客分享 http://blog.sciencenet.cn/u/jinxingche

博文

编写KNN分类的R语言代码

已有 4000 次阅读 2015-12-29 09:17 |个人分类:统计机器学习及R编程|系统分类:科研笔记| style, function

KNNperfor<-function(trainX, trainy, testX, testy,k)

{##build KNN classification model

## example of euclidean distances.

 

M=length(trainX[,1])

Xt=rbind(trainX, testX)

Dtest=as.matrix(dist(Xt, method = "euclidean"))

Tsort=sort(Dtest[M+1,1:M], method = "qu", index.return = TRUE)

Vote=trainy[Tsort$ix[1:k]]

PreY=as.numeric(names(table(Vote))[table(Vote)==max(table(Vote))])  

Error=PreY!=testy

Predict=c(PreY,Error)

return(Predict)

}





KNN分类时确定k后得到投票向量Vote,用以下可求出预测分类

PreY=as.numeric(names(table(Vote))[table(Vote)==max(table(Vote))])




https://wap.sciencenet.cn/blog-93519-946571.html


下一篇:一种部分变量优化的R软件optim函数求解方法
收藏 IP: 113.140.29.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-29 22:04

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部