Learn R Programming

scanstatistics (version 1.0.1)

dist_to_knn: Given a distance matrix, find the \(k\) nearest neighbors.

Description

Given a distance matrix, calculate the \(k\) nearest neighbors of each location, including the location itself. The matrix should contain only zeros on the diagonal, and all other elements should be positive.

Usage

dist_to_knn(x, k = min(10, nrow(x)))

Arguments

x

A (square) distance matrix. Elements should be non-negative and the diagonal zeros, but this is not checked.

k

The number of nearest neighbors, counting the location itself.

Value

A matrix of integers, row \(i\) containing the \(k\) nearest neighbors of location \(i\), including itself.

Examples

Run this code
# NOT RUN {
x <- matrix(c(0, 0,
              1, 0,
              2, 1,
              0, 4,
              1, 3),
            ncol = 2, byrow = TRUE)
d <- dist(x, diag = TRUE, upper = TRUE)
dist_to_knn(d, k = 3)
# }

Run the code above in your browser using DataLab