sknn function

Simple k nearest Neighbours

Simple k nearest Neighbours

Function for simple knn classification.

sknn(x, ...) ## Default S3 method: sknn(x, grouping, kn = 3, gamma=0, ...) ## S3 method for class 'data.frame' sknn(x, ...) ## S3 method for class 'matrix' sknn(x, grouping, ..., subset, na.action = na.fail) ## S3 method for class 'formula' sknn(formula, data = NULL, ..., subset, na.action = na.fail)

Arguments

  • x: matrix or data frame containing the explanatory variables (required, if formula is not given).
  • grouping: factor specifying the class for each observation (required, if formula is not given).
  • formula: formula of the form groups ~ x1 + x2 + .... That is, the response is the grouping factor and the right hand side specifies the (non-factor) discriminators.
  • data: Data frame from which variables specified in formula are preferentially to be taken.
  • kn: Number of nearest neighbours to use.
  • gamma: gamma parameter for rbf in knn. If gamma=0 ordinary knn classification is used.
  • subset: An index vector specifying the cases to be used in the training sample. (Note: If given, this argument must be named.)
  • na.action: specify the action to be taken if NAs are found. The default action is for the procedure to fail. An alternative is na.omit, which leads to rejection of cases with missing values on any required variable. (Note: If given, this argument must be named.)
  • ...: currently unused

Details

If gamma>0 an gaussian like density is used to weight the classes of the kn nearest neighbors. weight=exp(-gamma*distance). This is similar to an rbf kernel. If the distances are large it may be useful to scale the data first.

Returns

A list containing the function call.

Author(s)

Karsten Luebke, karsten.luebke@fom.de

See Also

predict.sknn, knn

Examples

data(iris) x <- sknn(Species ~ ., data = iris) x <- sknn(Species ~ ., gamma = 4, data = iris)