knn                  package:class                  R Documentation

_k-_N_e_a_r_e_s_t _N_e_i_g_h_b_o_u_r _C_l_a_s_s_i_f_i_c_a_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n:

     k-nearest neighbour classification for test set from training set.
     For each row of the test set, the 'k' nearest (in Euclidean
     distance) training set vectors are found, and the classification
     is decided by majority vote, with ties broken at random. If there
     are ties for the 'k'th nearest vector, all candidates are included
     in the vote.

_U_s_a_g_e:

     knn(train, test, cl, k = 1, l = 0, prob = FALSE, use.all = TRUE)

_A_r_g_u_m_e_n_t_s:

   train: matrix or data frame of training set cases. 

    test: matrix or data frame of test set cases. A vector will be
          interpreted as a row vector for a single case. 

      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 'k'th largest are included. If false, a random selection
          of distances equal to the 'k'th is chosen to use exactly 'k'
          neighbours. 

_V_a_l_u_e:

     factor of classifications of test set. 'doubt' will be returned as
     'NA'.

_R_e_f_e_r_e_n_c_e_s:

     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.

_S_e_e _A_l_s_o:

     'knn1', 'knn.cv'

_E_x_a_m_p_l_e_s:

     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)))
     knn(train, test, cl, k = 3, prob=TRUE)
     attributes(.Last.value)

