# Bio.kNN module

Code for doing k-nearest-neighbors classification (DEPRECATED).

k Nearest Neighbors is a supervised learning algorithm that classifies a new observation based the classes in its surrounding neighborhood.

Glossary:

  - distance The distance between two points in the feature space.

  - weight The importance given to each point for classification.

Classes:

  - kNN Holds information for a nearest neighbors classifier.

Functions:

  - train Train a new kNN classifier.

  - calculate Calculate the probabilities of each class, given an observation.

  - classify Classify an observation into a class.

Weighting Functions:

  - equal_weight Every example is given a weight of 1.

This module has been deprecated, please consider an alternative like scikit-learn instead.

class Bio.kNN.kNN

  Bases: `object`

  Holds information necessary to do nearest neighbors classification.

  Attributes:

    - classes Set of the possible classes.

    - xs List of the neighbors.

    - ys List of the classes that the neighbors belong to.

    - k Number of neighbors to look at.

  __init__()

    Initialize the class.

  __firstlineno__ = 53
  __static_attributes__ = ('classes', 'k', 'xs', 'ys')

Bio.kNN.equal_weight(x, y)

  Return integer one (dummy method for equally weighting).

Bio.kNN.train(xs, ys, k, typecode=None)

  Train a k nearest neighbors classifier on a training set.

  xs is a list of observations and ys is a list of the class assignments. Thus, xs and ys should contain the same number of elements. k is the number of neighbors that should be examined when doing the classification.

Bio.kNN.calculate(knn, x, weight_fn=None, distance_fn=None)

  Calculate the probability for each class.

  Arguments:

    - x is the observed data.

    - weight_fn is an optional function that takes x and a training example, and returns a weight.

    - distance_fn is an optional function that takes two points and returns the distance between them. If distance_fn is None (the default), the Euclidean distance is used.

  Returns a dictionary of the class to the weight given to the class.

Bio.kNN.classify(knn, x, weight_fn=None, distance_fn=None)

  Classify an observation into a class.

  If not specified, weight_fn will give all neighbors equal weight. distance_fn is an optional function that takes two points and returns the distance between them. If distance_fn is None (the default), the Euclidean distance is used.

Biopython v: 1.85

Versions
  Previous
  Latest
  Develop

Biopython Project
  Homepage
  On GitHub