6399 1

[学习分享] R语言使用caret包和class包进行KNN算法 [推广有奖]

  • 5关注
  • 8粉丝

已卖:376份资源

博士生

38%

还不是VIP/贵宾

-

威望
0
论坛币
3141 个
通用积分
73.8548
学术水平
37 点
热心指数
36 点
信用等级
23 点
经验
33667 点
帖子
298
精华
0
在线时间
141 小时
注册时间
2012-11-23
最后登录
2022-9-18

楼主
奇渥温·沙加 发表于 2016-11-13 22:49:32 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
# Classifying using the K-Nearest Neighbors (KNN) approach
#----------------------------------------------------------------

library(class)
library(caret)

vac <- read.csv("vacation-trip-classification.csv")

vac$Income.z <- scale(vac$Income)
vac$Family_size.z <- scale(vac$Family_size)

set.seed(1000)
train.idx <- createDataPartition(vac$Result, p = 0.5, list = FALSE)

train <- vac[train.idx, ]

temp <- vac[-train.idx, ]

val.idx <- createDataPartition(temp$Result, p = 0.5, list = FALSE)

val <- temp[val.idx, ]

test <- temp[-val.idx, ]

pred1 <- knn(train[,4:5], val[,4:5], train[,3], 1)

errmat1 = table(val$Result, pred1, dnn = c("Actual", "Predicted"))

pred.test <- knn(train[,4:5], test[,4:5], train[,3], 1)

errmat.test = table(test$Result, pred.test, dnn = c("Actual", "Predicted"))

knn.automate <- function (trg_predictors, val_predictors, trg_target, val_target, start_k, end_k)
{
  for (k in start_k:end_k) {
    pred <- knn(trg_predictors, val_predictors,
                               trg_target, k)
    tab <- table(val_target, pred, dnn = c("Actual", "Predicted"))
    cat(paste("Error matrix for k=", k,"\n"))
    cat("==========================\n")
    print(tab)
    cat("--------------------------\n\n\n")
  }
}


knn.automate(train[,4:5], val[,4:5], train[,3], val[,3], 1,7)

pred5 <- knn(train[4:5], val[,4:5], train[,3], 5, prob=TRUE)

pred5

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Knn算法 Care RET CAR ARE library

已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
我的素质低 + 100 + 20 + 5 + 5 + 5 精彩帖子

总评分: 经验 + 100  论坛币 + 20  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

沙发
BREAKSWORD 发表于 2017-10-15 17:41:11
Error in knn(train[, 4:5], val[, 4:5], train[, 3], 1) :
  'train' and 'class' have different lengths
我运行这个怎么显示这个啊
高手给个意见啊

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 21:26