reduce.nn               package:class               R Documentation

Reduce Training Set for a k-NN Classifier

Description:

     Reduce training set for a k-NN classifier. Used after 'condense'.

Usage:

     reduce.nn(train, ind, class)

Arguments:

   train: matrix for training set 

     ind: Initial list of members of the training set (from
          'condense'). 

   class: vector of classifications for test set 

Details:

     All the members of the training set are tried in random order. Any
     which when dropped do not cause any members of the training set to
     be wrongly classified are dropped.

Value:

     index vector of cases to be retained.

References:

     Gates, G.W. (1972) The reduced nearest neighbor rule. _IEEE Trans.
     Information Theory_ *IT-18*, 431-432.

     Ripley, B. D. (1996) _Pattern Recognition and Neural Networks._
     Cambridge.

     Venables, W. N. and Ripley, B. D. (2002) _Modern Applied
     Statistics with S._ Fourth edition.  Springer.

See Also:

     'condense', 'multiedit'

Examples:

     data(iris3)
     train <- rbind(iris3[1:25,,1], iris3[1:25,,2], iris3[1:25,,3])
     test <- rbind(iris3[26:50,,1], iris3[26:50,,2], iris3[26:50,,3])
     cl <- factor(c(rep("s",25), rep("c",25), rep("v",25)))
     keep <- condense(train, cl)
     knn(train[keep,], test, cl[keep])
     keep2 <- reduce.nn(train, keep, cl)
     knn(train[keep2,], test, cl[keep2])

