knn.dist | R Documentation |
Fast k-nearest neighbor distance searching algorithms.
knn.dist(data, k=10, algorithm=c("kd_tree", "cover_tree", "CR", "brute"))
knnx.dist(data, query, k=10, algorithm=c("kd_tree", "cover_tree",
"CR", "brute"))
data |
an input data matrix. |
query |
a query data matrix. |
algorithm |
nearest neighbor searching algorithm. |
k |
the maximum number of nearest neighbors to search. The default value is set to 10. |
return the Euclidiean distances of k nearest neighbors.
Shengqiao Li. To report any bugs or suggestions please email: lishengqiao@yahoo.com
Bentley J.L. (1975), “Multidimensional binary search trees used for associative search,” Communication ACM, 18, 309-517.
Arya S. and Mount D.M. (1993), “Approximate nearest neighbor searching,” Proc. 4th Ann. ACM-SIAM Symposium on Discrete Algorithms (SODA'93), 271-280.
Arya S., Mount D.M., Netanyahu N.S., Silverman R. and Wu A.Y. (1998), “An optimal algorithm for approximate nearest neighbor searching,” Journal of the ACM, 45, 891-923.
Beygelzimer A., Kakade S. and Langford J. (2006), “Cover trees for nearest neighbor,” ACM Proc. 23rd international conference on Machine learning, 148, 97-104.
get.knn
and knn.index
.
if(require(mvtnorm))
{
sigma<- function(v, r, p)
{
V<- matrix(r^2, ncol=p, nrow=p)
diag(V)<- 1
V*v
}
X<- rmvnorm(1000, mean=rep(0, 20), sigma(1, .5, 20))
print(system.time(knn.dist(X)) )
print(system.time(knn.dist(X, algorithm = "kd_tree")))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.