matlab knnsearch() 函数用法详解
函数用法详解| KNN临近搜索
临近搜索
matlab knnsearch() 函数函数
功能:使用输入数据查找k近邻
语法:
Idx = knnsearch(X,Y)
Idx = knnsearch(X,Y,Name,Value)
[Idx,D] = knnsearch(___)
解释:
Idx = knnsearch(X,Y) 为Y中的每个查询点查找X中的最近邻居,并返回Idx中最近邻居的索引(一个列向量)。Idx的行数与Y相同。
Idx = knnsearch(X,Y,Name,Value) 使用一个或多个名称–值对参数指定的附加选项返回Idx。例如,可以指定要搜索的最近邻居的数
量和搜索中使用的距离度量。Name是参数名,Value是对应的值。名称必须出现在引号内。如:“ K,10 ”—最近邻居的数量(10
个),在X中为Y中的每个点找到的最近的邻居的数量。
[Idx,D] = knnsearch(___)另外返回矩阵D,使用之前语法中的任何输入参数。D包含Y中每个观测值与X中相应的最近观测值之间的
距离。
举例:
load hospital;
X = [hospital.Age hospital.Weight];
Y = [20 162; 30 169; 40 168; 50 170; 60 171]; % New patients
在X和Y之间执行knnsearch以查找最近邻居的索引。
Idx = knnsearch(X,Y);
找出年龄和体重在X项上与Y项最接近的患者。
X(Idx,:)
ans = 5×2
25 171
25 171
39 164
49 170
50 172
作者:敲键盘的大蚂蚁