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'.

_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)

