【发布时间】:2015-02-24 12:23:42
【问题描述】:
欢迎!
我有一组 n matlab 矩阵,其结构如下:
xyz_1 -3,37200000000000 2,80000000000000 5,03400000000000
xyz_2 -2,21700000000000 1,74500000000000 7,45300000000000
.... .................. ................ ................
xyz_n -1,39300000000000 0,00700000000000000 6,35500000000000
其中第一列是矩阵的名称,接下来的三列是xyz坐标。我正在寻找一种有效的方法来找到最近的邻居。我想给出矩阵名称和潜在邻居的 k 作为输入参数,然后程序将找到最近的邻居,以下列形式给我结果矩阵:
[nearest_neighbor_name_1; distance_between_quoted_element_and_nearest_neigbor_1
nearest_neighbor_name_2; distance_between_quoted_element_and_nearest_neigbor_2
nearest_neighbor_name_....; distance_between_quoted_element_and_nearest_neigbor_....
nearest_neighbor_name_k; distance_between_quoted_element_and_nearest_neigbor_k]
我尝试使用knnsearch不幸的是没有效果。感谢您的帮助!
【问题讨论】:
-
请使用`代码段重新格式化问题。另外:您的意思是:我尝试使用
knnsearch没有效果?为什么这种方法不能令人满意? -
我找到了如何搜索二维坐标的描述。不幸的是,在三维系统的情况下,我不知道如何使用
knnseach。此外,knneseach的输入参数是单个矩阵(X 和 Y),而不是在我的情况下是一组多数组。 -
查看this post 以获得洞察力。确保格式化数据,使每一行是一个点,每一列是一个变量。
标签: matlab matrix 3d nearest-neighbor