classifyKNN {maigesPack} | R Documentation

## Function to do discrimination analysis

### Description

Function to search by groups of few genes, also called cliques, that can discriminate (or classify) between two distinct biological sample types, using the k nearest neighbourhood method. This function uses exhaustive search.

### Usage

    classifyKNN(obj=NULL, sLabelID="Classification", facToClass=NULL,
                gNameID="GeneName", geneGrp=1, path=NULL, nGenes=3, kn=5)

### Arguments

`obj` | object of class `maiges` to search the classifiers.
`sLabelID` | character string with the identification of the sample label to be used.
`facToClass` | named list with 2 character vectors specifying the samples to be compared. If NULL (default) the first 2 types of sLabelID are used.
`gNameID` | character string with the identification of gene label ID.
`geneGrp` | character or integer specifying the gene group to be tested (`colnames` of `GeneGrps` slot). If both `geneGrp` and `path` are NULL all genes are used. Defaults to 1 (first group).
`path` | character or integer specifying the gene network to be tested (`names` of `Paths` slot). If both `geneGrp` and `path` are NULL all genes are used. Defaults to NULL.
`nGenes` | integer specifying the number of genes in the clique, or classifier.
`kn` | number of neighbours for the knn method.

### Details

Pay attention with the arguments `geneGrp` and `path`, if both of them is NULL an exhaustive search for all dataset will be done, and this search may be extremely computational intensive, which may result in a process during some weeks or months depending on the number of genes in your dataset.

If you want to construct classifiers from a group of several genes, the search and choose (SC) method may be an interesting option. It is implemented in the function `classifyKNNsc`. This function uses the function `knn.cv` from package class to construct k-nearest neighbour classifiers. It possible to use functions `classifyLDA` or `classifySVM` to construct classifiers using Fisher's linear discriminant analysis or support vector machines methods, respectively.

### Value

The result of this function is an object of class `maigesClass`.

### Author(s)

Elier B. Cristo, adapted by Gustavo H. Esteves <gesteves@vision.ime.usp.br>

### See Also

`knn.cv`, `classifyKNNsc`, `classifyLDA`, `classifySVM`.

### Examples

    ## Loading the dataset
    data(gastro)

    ## Doing KNN classifier with 2 genes for the 6th gene group comparing
    ## the 2 categories from 'Type' sample label.
    gastro.class = classifyKNN(gastro.summ, sLabelID="Type",
      gNameID="GeneName", nGenes=2, geneGrp=6)
    gastro.class

    ## To do classifier with 3 genes for the 6th gene group comparing
    ## normal vs adenocarcinomas from 'Tissue' sample label
    gastro.class = classifyKNN(gastro.summ, sLabelID="Tissue",
      gNameID="GeneName", nGenes=3, geneGrp=6,
      facToClass=list(Norm=c("Neso","Nest"), Ade=c("Aeso","Aest")))

[Package maigesPack version 1.44.0 Index]