#r #classification #knn
#r #классификация #knn
Вопрос:
Как я могу определить значение kmax для использования? Когда я его удаляю, R выводит сообщение об ошибке, а когда я его добавляю, R выводит другое сообщение об ошибке. Я продолжаю ходить вокруг да около с этим, но ничего не добиваюсь. Эти сообщения сбивают с толку. Я искал похожие вопросы в stackoverflow, но не увидел ни одного, отсюда и этот вопрос. Вы знаете, почему kmax = 7 неверно? Как я узнаю, каково правильное значение kmax? Спасибо за любую помощь, которую вы можете предоставить.
#works
output1 <- train.kknn( as.factor(myParam)~., data <- trainingData)
output1
#works
output1 <- train.kknn( as.factor(myParam)~., data <- trainingData, distance <- 2)
output1
# does not work
#error message: Error in train.kknn(as.factor(myParam) ~ ., data <- trainingData, kmax <- 7, :
NA/NaN/Inf in foreign function call (arg 9)
In addition: Warning message:
In train.kknn(as.factor(myParam) ~ ., data <- trainingData, kmax <- 7, :
NAs introduced by coercion
output1 <- train.kknn( as.factor(myParam)~., data <- trainingData, kmax <- 7, distance <- 2,kernel <- "rectangular")
output1
# does not work,
# error message: Error in kmax 2L : non-numeric argument to binary operator
output1 <- train.kknn( as.factor(myParam)~., data <- trainingData, distance <- 2, kernel <- "rectangular")
output1
Мне нужно, чтобы это работало:
output1 <- train.kknn( as.factor(myParam)~., data <- trainingData,
kmax <- ???, <- whatever this value should be
distance <- 2, kernel <- "rectangular")
output1
Комментарии:
1. KNN нужны все числовые переменные (не факторные, фиктивные, индикаторные и т.д.). Как минимум, это то, на что указывает ваше последнее сообщение.
2. вы правы, я предполагаю, что именно поэтому происходит принуждение. Спасибо, что помогли мне увидеть это.
3. Как мне отметить ваш комментарий как решение?
Ответ №1:
ответом lmo был ответ Спасибо, lmo, за то, что помогли мне увидеть свет.