1识别范围内的所有邻居

KMKNN或VP树算法的另一个应用是在一定距离内识别所有相邻点1这里的默认值是欧几里得人,但再次,我们可以设置距离=“曼哈顿”在里面Bnparam如果需要的话。当前点。我们首先模拟一些数据:

nobs <-10000 ndim <-20数据<-matrix(runif(nobs*ndim),ncol = ndim)

我们应用findneighbors()功能数据

fout < -  findneighbors(数据,阈值= 1)头(fout $ index)
## [[1]] ## [1] 5893 6346 4583 1 ## ## [[2]] ## [1] 7548 1140 3681 2 491 5579 6875 7996 4108 2322 2322 9139 6084 8094 8094 ## ## [[[[[[[3]] ## [1] 631 3 6164 ## ## [[4]] ## [1] 4180 4 ## ## [[5]] ## [1] 9361 5942 5665 2833 6453 5 ## ###[[6]] ## [1] 1458 6 3549
头(fout $距离)
## [[1]] ## [1] 0.9861039 0.9974294 0.9576360 0.0000000 ## ## [[2]] ## [1] 0.9291721 0.9912029 0.9055651 0.0000000 0.9694715 0.9947040 0.9965409 ## [8] 0.8680706 0.9733941 0.9093537 0.9200365 0.9725453 0.9753120 0.9954657 ## ## [[3]] ## [1] 0.9740005 0.0000000 0.8560576 ## ## [[4]] ## [1] 0.9265287 0.0000000 ## ## [[5]] ## [1] 0.9709375 0.9150921 0.9968232 0.98773940.8761274 0.0000000 ## ## [[6]] ## [1] 0.9857669 0.0000000 0.7900044

每个条目指数列表对应于数据并包含行索引数据在内部临界点。例如,第三点数据有以下邻居:

fout $ index [[3]
## [1] 631 3 6164

…与这些邻居的距离下面:

fout $距离[[3]
## [1] 0.9740005 0.0000000 0.8560576

请注意,对于此功能,报告的邻居是不是按距离排序。输出的顺序是完全任意的,并且会根据随机种子而变化。但是,邻居的身份是完全决定性的。

2查询邻居的另一个数据集

queryneighbors()还提供了函数,以识别查询点的一定距离内的所有点。给定查询数据集:

nQuery <-1000 ndim <-20 Query <-matrix(runif(nquery*ndim),ncol = ndim)

…我们应用queryneighbors()功能:

qout <-queryneighbors(数据,查询,阈值= 1)长度(qout $ index)
## [1] 1000

…每个条目QOUT $索引对应于一排询问并包含其邻居数据。同样,输出的顺序是任意的,但邻居的身份是确定性的。

3进一步的选项

描述的大多数选项findknn()在这里也适用。例如:

  • 子集识别邻居的一部分。
  • get.distance在不必要的情况下避免检索距离。
  • Bpparam平行于多个工人的计算。
  • raw.index从预先计算的索引返回原始索引。

请注意,预先计算索引的论点是预计

pre <-buildIndex(data,bnparam = kmknnparam())fout.pre <- findneighbors(bnindex = pre,threshold = 1)qout.pre <-queryneighbors(bnindex = pre,query = pre,query = query = query = query = query,threshold = 1)

用户被转介到每个功能的文档以获取特定详细信息。

4会话信息

SessionInfo()
## R版本4.2.0 RC(2022-04-19 R82224)##平台:x86_64-pc-linux-gnu(64位)### blas:/home/biocbuild/bbs-3.15-bioc/r/lib/libblas.so ## lapack:/home/biocbuild/bbs-3.15-bioc/rib/lib/libb/librlapack.so ### ## ## locale:## [1] lc_ctype = en_us.utf-8 lc_numeric = c ## [3] lc_time = en_gb lc_collat​​e = c ## [5] lc_us.us.utf-8 lc_messages = en_us.utf-8 ## [7]lc_paper = en_us.utf-8 lc_name = c ## [9] lc_address = c lc_telephone = c ## [11] lc_measurement = en_us.utf-8 lc_istientification = c ## ## ## ## ##附件:图形GRDEVICES UTILS数据集方法基础## ##其他附件:## [1] BioCparallel_1.30.0 Biocneighbors_1.14.0 Knitr_1.38 ## [4] BiocStyle_2.24.0 ## ## ## ## ## ## ## ## ## ## ## ##通过a namespace(和未附件)(并且不附件)## [1] rcpp_1.0.8.3 magrittr_2.0.3 Biocgenerics_0.42.0 ## [4] lattice_0.20-45 R6_2.5.1.1 rlang_1.1.0.2 ## [7] fastmap_1.1.1.1.1.1.1.0 stringr_1.1.1.1.4.4.0 ## [10 10##10##10##10##10##10##10##10##10 10 10##10##10##10##10##10 10 10##10##10 10 10] parallel_4.2.0 grid_4.2.0 xfun_0.30 ## [13] cli_3.3。0 jquerylib_0.1.4 htmltools_0.5.2 ## [16] yaml_2.3.5 digest_0.6.29 bookdown_0.26 ## [19] Matrix_1.4-1 BiocManager_1.30.17 S4Vectors_0.34.0 ## [22] sass_0.4.1 evaluate_0.15 rmarkdown_2.14 ## [25] stringi_1.7.6 compiler_4.2.0 bslib_0.3.1 ## [28] stats4_4.2.0 jsonlite_1.8.0