$k$-nearest neighbour regression that can return the average value for the neighbours.
knnreg(x, ...) # S3 method for default knnreg(x, ...) # S3 method for formula knnreg(formula, data, subset, na.action, k = 5, ...) # S3 method for matrix knnreg(x, y, k = 5, ...) # S3 method for data.frame knnreg(x, y, k = 5, ...) # S3 method for knnreg print(x, ...) knnregTrain(train, test, y, k = 5, use.all = TRUE)
| x | a matrix or data frame of training set predictors. |
|---|---|
| ... | additional parameters to pass to |
| formula | a formula of the form |
| data | optional data frame containing the variables in the model formula. |
| subset | optional vector specifying a subset of observations to be used. |
| na.action | function which indicates what should happen when the data
contain |
| k | number of neighbours considered. |
| y | a numeric vector of outcomes. |
| train | matrix or data frame of training set cases. |
| test | matrix or data frame of test set cases. A vector will be interpreted as a row vector for a single case. |
| use.all | controls handling of ties. If true, all distances equal to
the |
An object of class knnreg. See predict.knnreg.
knnreg is similar to ipredknn and
knnregTrain is a modification of knn. The
underlying C code from the class package has been modified to return
average outcome.
data(BloodBrain) inTrain <- createDataPartition(logBBB, p = .8)[[1]] trainX <- bbbDescr[inTrain,] trainY <- logBBB[inTrain] testX <- bbbDescr[-inTrain,] testY <- logBBB[-inTrain] fit <- knnreg(trainX, trainY, k = 3) plot(testY, predict(fit, testX))