pknnCMA                 package:CMA                 R Documentation

_P_r_o_b_a_b_i_l_i_s_t_i_c _N_e_a_r_e_s_t _N_e_i_g_h_b_o_u_r_s

_D_e_s_c_r_i_p_t_i_o_n:

     Nearest neighbour variant that replaces the simple voting scheme
     by a weighted one (based on euclidean distances). This is also
     used to compute class probabilities.

     For 'S4' class information, see pknnCMA-methods.

_U_s_a_g_e:

     pknnCMA(X, y, f, learnind, beta = 1, k = 1, ...)

_A_r_g_u_m_e_n_t_s:

       X: Gene expression data. Can be one of the following:

             *  A 'matrix'. Rows correspond to observations, columns to
                variables.

             *  A 'data.frame', when 'f' is _not_ missing (s. below).

             *  An object of class 'ExpressionSet'.

       y: Class labels. Can be one of the following:

             *  A 'numeric' vector.

             *  A 'factor'.

             *  A 'character' if 'X' is an 'ExpressionSet' that
                specifies the phenotype variable.

             *  'missing', if 'X' is a 'data.frame' and a proper
                formula 'f' is provided.

          *WARNING*: The class labels will be re-coded to range from
          '0' to 'K-1', where 'K' is the total number of different
          classes in the learning set. 

       f: A two-sided formula, if 'X' is a 'data.frame'. The left part
          correspond to class labels, the right to variables.

learnind: An index vector specifying the observations that belong to
          the learning set. Must not be missing for this method.

    beta: Slope parameter for the logistic function which is used for
          the computation of class probabilities. The default value (1)
          need not produce reasonable results and can produce warnings.

       k: Number of nearest neighbours to use.

     ...: Currently unused argument.

_D_e_t_a_i_l_s:

     The algorithm is as follows:

        *  Determine the 'k' nearest neighbours

        *  For each class represented among these, compute the average
           euclidean distance.

        *  The negative distances are plugged into the logistic
           function with parameter 'beta'.

        *  Classify into the class with highest probability.

_V_a_l_u_e:

     An object of class 'cloutput'.

_A_u_t_h_o_r(_s):

     Martin Slawski martin.slawski@campus.lmu.de

     Anne-Laure Boulesteix <URL: http://www.slcmsr.net/boulesteix>

_S_e_e _A_l_s_o:

     'compBoostCMA', 'dldaCMA', 'ElasticNetCMA', 'fdaCMA', 'flexdaCMA',
     'gbmCMA', 'knnCMA', 'ldaCMA', 'LassoCMA', 'nnetCMA', 'plrCMA',
     'pls_ldaCMA', 'pls_lrCMA', 'pls_rfCMA', 'pnnCMA', 'qdaCMA',
     'rfCMA', 'scdaCMA', 'shrinkldaCMA', 'svmCMA'

_E_x_a_m_p_l_e_s:

     ### load Golub AML/ALL data
     data(golub)
     ### extract class labels
     golubY <- golub[,1]
     ### extract gene expression from first 10 genes
     golubX <- as.matrix(golub[,-1])
     ### select learningset
     ratio <- 2/3
     set.seed(111)
     learnind <- sample(length(golubY), size=floor(ratio*length(golubY)))
     ### run probabilistic k-nearest neighbours
     result <- pknnCMA(X=golubX, y=golubY, learnind=learnind, k = 3)
     ### show results
     show(result)
     ftable(result)
     plot(result)

