Re: [R] knn - 10 fold cross validation

From: Liaw, Andy <andy_liaw_at_merck.com>
Date: Wed 07 Jun 2006 - 11:52:18 EST


You might want to check out the function tune.knn() in the e1071 package.  

Andy


From: r-help-bounces@stat.math.ethz.ch on behalf of Tim Smith Sent: Tue 6/6/2006 8:29 PM
To: r-help@stat.math.ethz.ch
Subject: [R] knn - 10 fold cross validation [Broadcast]

Hi,    

  I was trying to get the optimal 'k' for the knn. To do this I was using the following function :       

knn.cvk <- function(datmat, cl, k = 2:9) {

    datmatT <- (datmat)
  cv.err <- cl.pred <- c()   

  for (i in k) {
    newpre <- as.vector(knn.cv(datmatT, cl, k = i))     cl.pred <- cbind(cl.pred, newpre)
    cv.err <- c(cv.err, sum(cl != newpre))     

  }
  k0 <- k[which.min(cv.err)]
  print(k0)
  return(k0)
}    

  However, the knn.cv function does a 'leave one out' cross validation. I checked the documentation to see if I could change this, but it appears that I cannot. Since I have large datasets, I would like to do 10 fold cross validation, instead of the 'leave one out'.    

  Is there some other function that I can use that will give me a 10 fold cross validation for KNN ?    

  many thanks.


        [[alternative HTML version deleted]]



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
<https://stat.ethz.ch/mailman/listinfo/r-help>
PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html
<http://www.R-project.org/posting-guide.html>


R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Wed Jun 07 12:01:37 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Wed 07 Jun 2006 - 18:10:45 EST.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.