Skip to content

Instantly share code, notes, and snippets.

@bdewilde
Created October 29, 2012 21:37
Show Gist options
  • Save bdewilde/3976703 to your computer and use it in GitHub Desktop.
Save bdewilde/3976703 to your computer and use it in GitHub Desktop.
weighted knn model, with k=1:15 and three kernels
# weighted k-nearest neighbors package
library(kknn)
# load the training data set
train <- read.csv("train.csv", header=TRUE)
# remove near-zero variance features
library(caret)
badCols <- nearZeroVar(train[, -1])
train <- train[, -(badCols+1)]
# optimize knn for k=1:15
# and kernel=triangular, rectangular, or gaussian
model <- train.kknn(as.factor(label) ~ ., train, kmax=15, kernel=c("triangular","rectangular","gaussian"))
# print out best parameters and prediction error
print(paste("Best parameters:", "kernel =", model$best.parameters$kernel, ", k =", model$best.parameters$k))
print(model$MISCLASS)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment