Then we split the data into a training (build the model) and a test (verify the model) set
train.data <- subset(sim.data, set == "Train", select = c(x1, x2))
test.data <- subset(sim.data, set == "Test", select = c(x1, x2))
obs.class <- subset(sim.data, set == "Train", select = class)
Now we can fit the K-NN model
fit.knn <- knn(train = train.data,
test = test.data,
cl = as.matrix(obs.class),
k = 3)
fit.knn
## [1] C C C B B A B B A A C C A A C A A C C C B C C B B A B B B B A B A B A
## [36] C A C C B C C C A A C B C B A A B B C C A B B C C C B A B B C B A C A
## [71] C B A
## Levels: A B C