mAtlAB中FinD函数的用法

matlab很常用,下面是find()函数的所有用法:1、 b=find(a),a是一个零元素的位置,如果X是一个行向量,则返回一个行向量,否则,返回一个列向量.如果X全是零元素或者是空数组,则返回一个空数组,例子如下所示,也可以用b=find(a>2

[x,y]=find(l==13) x为行序号 y为列序号 l(x,y)为所有满足条件的元素

输出是对的.因为他找到的是b(2:n,2)中的第一个元素.你可以好好看看find函数的作用.你如果写下面代码应该就对了:a = b(2:n,2);a(q=find(b(2:n,2)==max(abs((b(2:n,2))))))这个输出就是第二列的第二个元素.

用help find可以查看帮助:例如 a=magic(4)find(a>5)find(A,5)等等.

find()函数用于找出矩阵x中所有的非零数,r代表行序号,c代表列序号,v是找出的数的值.在你给的x中,非零的数分别为 3, 2, -5, 7, 1 它们的位置分别是 3 第1行第1列2 第1行第2列-5 第2行第2列7 第2 行第3列1 第3行第3 列 所以所得结果为 r = 1 2 1 2 3 c = 1 1 2 3 3 v = 3 -5 2 7 1

find返回的是满足条件的索引向量 满足条件的是几个,返回的就是几个数组成的向量 若只有一个满足条件,返回的当然是只有一个数的向量 例如:>> a=[1,2,3] a = 1 2 3>> u=find(a>min(a)) u = 2 3>>

从你的需要查找的数据来看,语句u=find(a>=max(a))所得到的应该只是得到a向量中最大值所在原始向量中的序号.对于行向量或列向量,u=find(a>=max(a))得到的都只是一个值,a(u)都代表的是这个值,我刚试了下没出现楼主出现的问题.

[m,n]=find(A)或n=find(A)返回矩阵A中非0项的坐标 通常与逻辑运算符一起使用, 如[m,n]=find(B>2) 返回的是矩阵B中大于2的坐标. (实际上B>2就是一个0-1矩阵,满足B>2的位置就是1,否则就是0)

举个例子讲下find函数的用法:例如a=[1 2 3;4 5 6;7 8 9] 1 2 3 4 5 6 7 8 9[m n]=find(a将m和n合并看[m n],为: 1 1 1 2 1 3即(1,1),(1,2),(1,3)也就是说a矩阵中(1,1),(1,2),(1,3)处元素小于4.find函数是找出矩阵a中满足一定条件的元素,返回的为这些元素的行列标号,分别将这些满足要求的元素的行标号存于m向量中,满足要求的元素的列标号存于向量n中,且m和n存储的元素标号是对应的.

find()得到的矩阵都是a(1,n)的形式 ,就算是空矩阵也是a(1,0)的形式 所以而对于[]matlab识别为a(0,0)型 形式不一样 无法比较 你可以用size求find函数的列数 在和0比较

相关文档

matlab中sort函数的用法
find函数matlab例子
matlab中find函数找下标
matlab中strfind函数
matlab中rem函数的用法
matlab中fix函数的用法
matlab中mod函数的用法
matlab中max函数用法
alloyfurniture.com
zxpr.net
ntjm.net
dzrs.net
realmemall.net
电脑版