k-nearest neighbour cross-validatory classification from training set.
Usage
knn.cv(train, cl, k = 1, l = 0, prob = FALSE, use.all = TRUE)
Arguments
train
matrix or data frame of training set cases.
cl
factor of true classifications of training set
k
number of neighbours considered.
l
minimum vote for definite decision, otherwise doubt. (More
precisely, less than k-l dissenting votes are allowed, even
if k is increased by ties.)
prob
If this is true, the proportion of the votes for the winning class
are returned as attribute prob.
use.all
controls handling of ties. If true, all distances equal to the kth
largest are included. If false, a random selection of distances
equal to the kth is chosen to use exactly k neighbours.
Value
Factor of classifications of training set. doubt will be returned as NA.
Details
This uses leave-one-out cross validation.
For each row of the training set train, the k nearest
(in Euclidean distance) other
training set vectors are found, and the classification is decided by
majority vote, with ties broken at random. If there are ties for the
kth nearest vector, all candidates are included in the vote.
References
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.