Я впервые использую KNN и столкнулся с проблемой.
Вот мой код:
k_range = c(1,3,5,10,25,50,100,200,300,353)
trainMSE = c()
testMSE = c()
knnTrain <- knn.reg(train = trainCarseats[, c("CompPrice","Income","Advertising","Price","Age")],
y=trainCarseats$Sales,
test = trainCarseats[, c("CompPrice","Income","Advertising","Price","Age")],
k = 5)
trainMSE <- mean((trainCarseats$Sales - knnTrain$pred)^2)
trainMSE
for(i in 1:length(k_range)){
knnTrain <- knn.reg(train = (trainCarseats[, c("CompPrice","Income","Advertising","Price","Age")]), y = trainCarseats$Sales,
test = (trainCarseats[,c("CompPrice","Income","Advertising","Price","Age")]),
k = k_range[i])
trainMSE[i] <- mean((trainCarseats$Sales - knnTrain$pred)^2)
}
for(i in 1:length(k_range)){
knnTest <- knn.reg(train = trainCarseats[, c("CompPrice","Income","Advertising","Price","Age")], y=trainCarseats$Sales, test = testCarseats[, c("CompPrice","Income","Advertising","Price","Age")], k = k_range[i])
testMSE[i] <- mean((testCarseats$Sales - knnTest$pred)^2)
}
Я просто получаю эту ошибку:
Ошибкав get.knnx (поезд, тест, k, алгоритм): ANN: ОШИБКА ------->
Что происходит?Странно то, что если я не делаю это в цикле, то все в порядке