MATLAB中find函数详解

转自http://blog.sina.com.cn/emily250886
功能:
    寻找非零元素的索引和值

语法:

1.  ind = find(X)

2.  ind = find(X, k)

3.  ind = find(X, k, 'first')

4.  ind = find(X, k, 'last')

5.  [row,col] = find(X, ...)

6.  [row,col,v] = find(X, ...)


说明:

1.  ind = find(X)   

     找出矩阵X中的所有非零元素,并将这些元素的线性索引值(linear indices:按列)返回到向量ind中。

     如果X是一个行向量,则ind是一个行向量;否则,ind是一个列向量。

     如果X不含非零元素或是一个空矩阵,则ind是一个空矩阵。

2.  ind = find(X, k) 或 3.  ind = find(X, k, 'first')

   找到前K个不为0的线性索引值k必须是一个正数,但是它可以是任何数字数值类型。

4. ind = find(X, k, 'last')

     找到后k个不为零元素的线性索引值。

5.  [row,col] = find(X, ...)

    返回矩阵X中非零元素的行和列的索引值。这个语法对于处理稀疏矩阵尤其有用。

    如果X是一个N(N>2)维矩阵,col包括列的线性索引。

    例如,一个5*7*3的矩阵X,有一个非零元素X(4,2,3),find函数将返回row=4和col=16。也就是说,(第1页有7列)+(第2页有7列)+(第3页有2列)=16。??

6.  [row,col,v] = find(X, ...)

      返回X中非零元素的一个列或行向量v,同时返回行和列的索引值。如果X是一个逻辑表示,则v是一个逻辑矩阵。输出向量v包含通过评估X表示得到的逻辑矩阵的非零元素。


例如,

A= magic(4)
A =
    16            13
        11    10     8
                12
        14    15     1

[r,c,v]= find(A>10);

r', c', v'
ans =
                                  (按列)
ans =
                                 (按列)
ans =
                         1

这里返回的向量v是一个逻辑矩阵,它包含N个非零元素,N=(A>10)

举例:

例1

X = [1 0 4 -3 0 0 0 8 6];
indices = find(X)

返回X中非零元素的线性索引值。

indices =
                     9

例2

你可以用一个逻辑表达方式定义X。例如

    find(X > 2)

返回X中大于2的元素的相对应的线性索引值。

ans =
             9

例3

下面find指令

X = [3 2 0; -5 0 7; 0 0 1];
[r,c,v] = find(X)

返回X中非零元素行索引值的向量

r =
     1
     2
     1
     2
     3

X中非零元素列索引值的向量

c =
     1
     1
     2
     3
     3

包含X中非零元素的向量

v =
     3
    -5
     2
     7
         (按列)

例4

下列表示

[r,c,v] = find(X>2)

返回包含X中非零元素的行索引值的向量

r =
     1
     2

包含X中非零元素的列索引值的向量

c =
     1
     3

包含N=(X>2)非零元素的逻辑矩阵

v =
     1
     1

记住,当你用find指令处理一个逻辑表达的时候,输出向量v不包含输入矩阵的非零元素的索引值。而是包含评估逻辑表达之后返回的非零值。

例5

在向量上的一些操作

x = [11   33   55]';

find(x)
ans =
     1
     3
     5
 

find(x == 0)
ans =
     2
     4
 

find(0 < x & x < 10*pi)
ans =
     1

例6

对于矩阵

M = magic(3)
M =
             6
             7
             2

find(M > 3, 4)

返回前四个M>3的索引值

ans =
     1
     3
     5
     6

例7

如果X是一个全零向量,find(X)返回一个空矩阵。

例如indices = find([0;0;0])

indices =
   Empty matrix: 0-by-1

例8

找出一个矩阵中的前n个最小项所在的位置
clear;clc 
A=rand(10)%随机生成一个矩阵,自己改
t=sort(A(:));
[m,n]=find(A<=t(20),20);
t=[m,n]%前20个最小项在矩阵A中的位置[行,列]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/352151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle Service Bus简介

我们正在为电信提供商设计一个新系统&#xff0c;在该系统中&#xff0c;我们研究了用作企业服务总线的Oracle服务总线&#xff08;OSB&#xff09;。 对我来说&#xff0c;第一个优点是它提供了惊人的工具支持。 通过将其捆绑为Oracle SOA套件&#xff0c;Oracle已将其所有企业…

VS2008中源文件与模块生成时的文件不同,仍要让调试器使用它吗

解决办法: 1.在工具-> 选项-> 调试-> 常规 里 把“要求源文件和版本匹配”的勾勾去掉 然后去掉“地址级的调试”的勾勾&#xff08;这样就不会出现反汇编代码了&#xff09; 然后重新引用 2.直接把WEB项目下面的Bin文件夹下的BLL全部删除。 3.若出现如下的警告信息 仔…

Linux中的15个‘echo’ 命令实例

作者&#xff1a; tecmint Avishek Kumar 译者&#xff1a; LCTT geekpi | 2014-10-03 12:42 评论: 4 收藏: 5 分享: 5 echo是一种最常用的与广泛使用的内置于Linux的bash和C shell的命令&#xff0c;通常用在脚本语言和批处理文件中来在标准输出或者文件中显示一行文本或…

springboot redis 断线重连_Redis高可用方案实现

redis中为了实现高可用&#xff08;High Availability&#xff0c;简称HA&#xff09;&#xff0c;采用了如下两个方式&#xff1a;主从复制数据。采用哨兵监控数据节点的运行情况&#xff0c;一旦主节点出现问题由从节点顶上继续进行服务。主从复制redis中主从节点复制数据有全…

罗德里格斯(Rodrigues)旋转向量与矩阵的变换

在做双目立体视觉深度图像生成的时候&#xff0c;遇到旋转向量&#xff08;1x3&#xff09;与旋转矩阵&#xff08;3x3&#xff09;的概念&#xff0c;得知二者可以通过罗德里格斯相互转化。 1.旋转的表示 处理三维旋转问题时&#xff0c;通常采用旋转矩阵的方式来描述旋转变换…

Mongodb 分片与副本集

测试搭建192.168.3.110mongos 30000&#xff0c;30001,30002config 40000,40001,40002shard1 50001,50002,50003shard2 50004,50005,50006,shard3 50007,50008,50009[rootmysql-slave10 data]# mkdir -p /data/config/1/data[rootmysql-slave10 data]# mkdir -p /data/config/2…

python必读5本书籍_免费下载!5本从Python入手机器学习的必备电子书!(附链接)...

大数据文摘授权转载自数据派THU作者&#xff1a;Richard Gall编译&#xff1a;车前子、丁楠雅今天&#xff0c;机器学习已成为软件工程所有领域中最重要的发展趋势之一。这门技术不再局限于研究者和数据分析者&#xff0c;从网络安全到网络开发机&#xff0c;器学习都至关重要。…

error c4996: 'fopen' This function or variable may be unsafe如何解决

1.问题描述 VS2013OPENCV249&#xff0c;不止一次遇到以下类似错误&#xff1a; error C4996: fopen: This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.d:\open…

JavaParser中AST节点的观察者

我们离JavaParser 3.0的第一个候选发布版本越来越近。 我们添加的最后一项功能是支持观察抽象语法树的所有节点的更改。 当我为此功能编写代码时&#xff0c;我收到了Danny van Bruggen&#xff08;又名Matozoid&#xff09;和Cruz Maximilien的宝贵反馈。 因此&#xff0c;我使…

nc命令详解

NetCat&#xff0c;在网络工具中有“瑞士军刀”美誉&#xff0c;其有Windows和Linux的版本。因为它短小精悍&#xff08;1.84版本也不过25k&#xff0c;旧版本或缩减版甚至更小&#xff09;、功能实用&#xff0c;被设计为一个简单、可靠的网络工具&#xff0c;可通过TCP或UDP协…

startindex 不能大于字符串长度_「12」学习MySQL第二类函数:字符串函数

前一篇文章总结了下MySQL中常用的数学函数&#xff0c;本文接下来的重点就是认识“字符串函数”。上图这匹漂亮的马儿就是通过各种字符(字母、括号、逗号、竖线等)画出来的。我不由自主地会去想下面几个问题&#xff1a;它到底有多少个字符&#xff1f;--字符串长度它里面的小写…

对数函数的C、MATLAB表示

1、C语言中的对数函数 头文件&#xff1a;#include格式&#xff1a;①double log (double x);log() 函数返回以 e 为底的对数值&#xff0c;即数学中的lnx&#xff1b;如果 x 为负数或 0&#xff0c;则会发生错误并设置 errno 值。错误代码&#xff1a;EDOM&#xff1a;参数x 为…

微信小程序开发——超链接或按钮点击跳转到其他页面失效

1. 超链接导航失效&#xff1a; 小程序规则——wx.navigateTo 和 wx.redirectTo 不允许跳转到 tabbar 页面&#xff0c;只能用 wx.switchTab 跳转到 tabbar 页面转载于:https://www.cnblogs.com/xyyt/p/9252835.html

javaone_JavaOne 2012:Lambda之路

javaone我最热切期待的JavaOne 2012演讲之一是Brian Goetz的“通往Lambda的道路”。 昨晚的技术主题演讲中的Lambda味道仅增加了预期。 这是在希尔顿广场A / B举行的&#xff0c;距离我之前在金门大桥A / B / C参加的演讲仅几步之遥。 我曾预计会打包相对较大的Plaza A / B&…

uml 时序图_UML各种图总结:

UML的书籍&#xff1a;《UML distilled》、《UML和模式应用》、《UML用户指南》、《UML对象设计与编程》、《UMLOracle8建模》UML&#xff08;Unified Modeling Language&#xff09;是一种统一建模语言&#xff0c;为面向对象开发系统的产品进行说明、可视化、和编制文档的一种…

让程序结果在屏幕上暂停一段时间

现在使用VS2013输出printf显示结果&#xff0c;经常会出现一闪而过的情况&#xff0c;现有以下解决办法&#xff1a; 1.调用系统命令暂停 #include <stdlib.h>system("pause");2. #include<conio.h> getchar(); 3. #include<stdlib.h> getchar(); …

Linux shell的标准输入、输出和错误

1.文件描述符 在linux shell执行命令时&#xff0c;每个进程都和三个打开的文件相联系&#xff0c;并使用文件描述符来引用这些文件。由于文件描述符不容易记忆&#xff0c;shell同时也给出了相应的文件名&#xff1a; 文件文件描述符输入文件—标准输入0&#xff08;缺省是键…

微基准测试进入Java 9

我已经几个月没有在这里写文章了&#xff0c;这种例外也会继续下去。 我计划在明年三月左右恢复写作。 本文末尾的说明。 等待&#xff01; 不完全是最后&#xff0c;因为您可以向下滚动。 它在文章结尾处。 继续阅读&#xff01; 三年前&#xff0c;我在写有关Java编译器如何…

摆渡车(noip2018 pj t3)

摆渡车&#xff08;题目和测试右转 洛谷P5017&#xff09; 做法&#xff1a;dp各种优化(剪枝) 这道题考场上看了一脸懵逼...第一眼看这 tm 不是个一维dp吗...结果按着这个朦胧的思路&#xff0c;删删改改约莫0.5h&#xff0c;终于过了小样例&#xff0c;然后一测大样例...GG了。…

关于树的冷知识

1、为什么冬天树干刷白漆&#xff1f; 刷的是是石灰水&#xff0c;主要成分是石灰乳,还有食盐,大豆粉,石榴合剂。 好处一、石灰具有一定的杀菌、杀虫作用&#xff0c;可以杀死寄生在树干上的一些越冬的真菌、细菌和害虫。 好处二、由于害虫一般都喜欢黑色、航脏的地方&#x…