Почему R выдает ошибку (не может найти функцию "knn") при передаче команды (knn.pred = knn (train.X, test.X, train.Y, k = 1)) во время обучения? - PullRequest
2 голосов
/ 24 января 2020
library(ISLR)
standardized.X=scale(Caravan [,-86])
test =1:1000
train.X=standardized.X[-test ,]
test.X=standardized.X[test ,]
attach(Caravan)
train.Y=Purchase [-test]
test.Y=Purchase [test]
set.seed(1)
knn.pred=knn(train.X,test.X,train.Y,k=1)
Error in knn(train.X, test.X, train.Y, k = 1) : 
  could not find function "knn"

1 Ответ

1 голос
/ 24 января 2020

Использование библиотеки классов

* Функция 1003 * является частью библиотеки class:

library(class)

Полный код:

library(ISLR)
library(class)
standardized.X = scale(Caravan [, -86])
test = 1:1000
train.X = standardized.X[-test , ]
test.X = standardized.X[test , ]
attach(Caravan)
train.Y = Purchase [-test]
test.Y = Purchase [test]
set.seed(1)
knn.pred = knn(train.X, test.X, train.Y, k = 1)

Вывод:

> knn.pred
  [1] No  No  No  No  No  No  Yes No  Yes No  No  No  Yes No  No  No  No  Yes Yes No  No 
 [22] No  Yes No  No  No  No  No  No  No  No  No  No  No  No  No  No  No  No  No  No  No 
...

Надеюсь, это поможет.

...