转载:https://blog.csdn.net/bushixiaofan/article/details/27700299

K近邻算法是找到K个最近的邻居。

IDX = knnsearch(X,Y) finds the nearest neighbor in X for each point in
    Y. X is an MX-by-N matrix and Y is an MY-by-N matrix. Rows of X and Y
    correspond to observations and columns correspond to variables. IDX is
    a column vector with MY rows. Each row in IDX contains the index of
    the nearest neighbor in X for the corresponding row in Y.

IDX = knnsearch(X, Y) 在向量集合X中找到分别与向量集合Y中每个行向量最近的邻居。X大小为MX-by-N矩阵,Y为大小MY-by-N的矩阵,X和Y的行对应观测的样本

列对应每个样本的变量。IDX是一个MY维的列向量,IDX的每一行对应着Y每一个观测在X中最近邻的索引值。
 
    [IDX, D] = knnsearch(X,Y) returns a MY-by-1 vector D containing the
    distances between each row of Y and its closest point in X.
 
    [IDX, D]= knnsearch(X,Y,'NAME1',VALUE1,...,'NAMEN',VALUEN) specifies
    optional argument name/value pairs:
 
      Name          Value
      'K'           A positive integer, K, specifying the number of nearest
                    neighbors in X to find for each point in Y. Default is
                    1. IDX and D are MY-by-K matrices. D sorts the
                    distances in each row in ascending order. Each row in
                    IDX contains the indices of K closest neighbors in X
                    corresponding to the K smallest distances in D.

“K”表示最近邻个数,返回值D是按行升序排列。
 
      'NSMethod'    Nearest neighbors search method. Value is either:

搜寻的方法参数

'Distance'     A string or a function handle specifying the distance

选择何种距离作为最近邻的度量标准
   
  
    Example:
       % Find 2 nearest neighbors in X and the corresponding values to each
       % point in Y using the distance metric 'cityblock'
       X = randn(100,5);
       Y = randn(25, 5);
       [idx, dist] = knnsearch(X,Y,'dist','cityblock','k',2);

knnsearch的更多相关文章

  1. matlab查找最临近搜索knnsearch

    Idx = knnsearch(X,Y) finds the nearest neighbor in X for each query point in Y and returns the indic ...

  2. 闪电动画模拟(Dielectric Breakdown Model)附源码

    当两个物体之间存在较大的电势差时会出现放电现象,比如生活中常见的闪电现象,闪电形成的条件就是云层积累了大量负电荷之后与地面之间形成了强大的电势差.目前关于闪电建模的方法比较少,下面介绍一种利用电介击穿 ...

  3. paper 130:MatLab分类器大全(svm,knn,随机森林等)

    train_data是训练特征数据, train_label是分类标签.Predict_label是预测的标签.MatLab训练数据, 得到语义标签向量 Scores(概率输出).1.逻辑回归(多项式 ...

  4. paper 120:计算距离矩阵的函数的pdist和pdist2函数

    matlab中自带的计算距离矩阵的函数有两个pdist和pdist2.前者计算一个向量自身的距离矩阵,后者计算两个向量之间的距离矩阵.基本调用形式如下: D = pdist(X) D = pdist2 ...

  5. 基于网格的波动方程模拟(Wave equation on mesh)附源码

    波动方程是偏微分方程 (PDE) 里的经典方程,它在物理学中有大量应用并经常用来解释空间中的能量传播.波动方程是一个依赖时间的方程,它解释了系统状态是如何随着时间的推移而发生变化.在下面模拟波动方程时 ...

  6. [SLAM]2D激光线特征提取

    Nguyen, V., et al. (2007)."A comparison of line extraction algorithms using 2D range data for i ...

  7. 学习OpenCV——Surf(特征点篇)&flann

    Surf(Speed Up Robust Feature) Surf算法的原理                                                             ...

  8. OpenCV图像Surf与flann特征点(转载)

    Surf(Speed Up Robust Feature) Surf算法的原理                                                             ...

  9. OpenCV探索之路(二十三):特征检测和特征匹配方法汇总

    一幅图像中总存在着其独特的像素点,这些点我们可以认为就是这幅图像的特征,成为特征点.计算机视觉领域中的很重要的图像特征匹配就是一特征点为基础而进行的,所以,如何定义和找出一幅图像中的特征点就非常重要. ...

随机推荐

  1. 微信公众号开发C#系列-6、消息管理-普通消息接受处理

    1.概述 通过前面章节的学习,我们已经对微信的开发有了基本的掌握与熟悉,基本可以上手做复杂的应用了.本篇我们将详细讲解微信消息管理中普通消息的接收与处理.当普通微信用户向公众账号发消息时,微信服务器将 ...

  2. IOS多态在项目中的应用

    今天我们讲述一个知识点(大家可能遗漏的) 多态是面试程序设计(OOP)一个重要特征,但在iOS中,可能比较少的人会留意这个特征,实际上在开发中我们可能已经不经意的使用了多态.比如说: 有一个table ...

  3. 简述ADO.NET命名空间

    system.data命名空间的类型 system.data命名空间的核心成员 命名空间 作用 Constraint  表示某个DataColumn对象的约束 DataColumn 表示某个DataT ...

  4. C# 中 equals( ) 和 == 的区别和用法

    Equals: 下面的语句中,x.y 和 z 表示不为 null 的对象引用. * 除涉及浮点型的情况外,x.Equals(x) 都返回 true. * x.Equals(y) 返回与 y.Equal ...

  5. Maven初解--依赖查找方法

    Maven可以实现对项目中的JAR包的版本管理,项目组成员公用一个Maven仓库(通过配置Maven的setting.xml文件,本地仓库和远程仓库,如果在本地仓库没有找到依赖的JAR,就会从远程仓库 ...

  6. javascript排序算法-选择排序

    选择排序 概念:选择排序大致的思路是找到数据结构中的最小值并将其放置在第一位,接着找到第二小的值并将其放在第二位,以此类推. 复杂度: O(n^2) 代码实现 var swap = function ...

  7. servlet doGet()方法获取字符串乱码问题

    当你遇到ajax向servlet发送数据出现乱码问题的时候不要惊慌,现有以下两个解决办法 (1)在doGet和doPost方法中添加以下代码 request.setCharactersEncoding ...

  8. Odoo 10的Linux安装

    CentOS7安装Odoo10流程如下一.更新系统#yum clean all#yum update 二.安装 PostgreSQL 1.安装数据库#yum install postgresql po ...

  9. Ubuntu 服务器443端口证书配置

    配置虚拟主机: cd /etc/apache2/sites-available 从默认的模板文件中复制过来一份进行自己的配置: sudo cp ./default-ssl.conf ./mysite1 ...

  10. 一篇文章了解Github和Git教程-AndroidStudio上传Github教程

    前言 为了方便保存自己的代码,下班后可以回家继续进行,自己的码农工作,介绍一下Github. 什么是Github呢? 作为一个编程人员,我觉得得了解一下Github吧! 当然,如果你放弃了码农或者技术 ...