O'Reilly logo

R in a Nutshell, 2nd Edition by Joseph Adler

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Machine Learning Algorithms for Classification

Much like regression, there are problems where linear methods don’t work well for classification. This section describes some machine learning algorithms for classification problems.

k Nearest Neighbors

One of the simplest techniques for classification problems is k nearest neighbors. Here’s how the algorithm works:

  1. The analyst specifies a “training” data set.

  2. To predict the class of a new value, the algorithm looks for the k observations in the training set that are closest to the new value.

  3. The prediction for the new value is the class of the “majority” of the k nearest neighbors.

To use k nearest neighbors in R, use the function knn in the class package:

libary(class)
knn(train, test, cl, k = 1, l = 0, prob = FALSE, use.all = TRUE)

Here is the description of the arguments to the knn function.

ArgumentDescriptionDefault
trainA matrix or data frame containing the training data. 
testA matrix or data frame containing the test data. 
clA factor specifying the classification of observations in the training set. 
kA numeric value specifying the number of neighbors to consider.1
lWhen k > 0, specifies the minimum vote for a decision. (If there aren’t enough votes, the value doubt is returned.)0
probIf prob=TRUE, then the proportion of votes for the winning class is returned as attribute prob.FALSE
use.allControls the handling of ties when selecting nearest neighbors. If use.all=TRUE, then all distances equal to the kth largest are included. If use.all=FALSE ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required