matlab中find 函数如何使用

 我来答
Alexhunteraaa
2018-03-29 · TA获得超过6399个赞
知道小有建树答主
回答量:15
采纳率:0%
帮助的人:3945
展开全部

matlab很常用,下面是find()函数的所有用法:

1、 b=find(a),a是一个矩阵,查询非零元素的位置,如果X是一个行向量,则返回一个行向量,否则,返回一个列向量。如果X全是零元素或者是空数组,则返回一个空数组,例子如下所示,也可以用b=find(a>2),这句的意思是在a中找到比较2大的元素;

2、b=find(a,2),找出a中最先出现的2个不为零的数,a是你所要找的矩阵,2参数是指数量;

3、c=find(a,2,'first'),用法和上例基本一样;

4、c=find(a,2,'last') 这句的意思是从最后一个非零元素起,找2个不为零的元素,如下图所示;

5、[a1,a2]=find(a),找出a矩阵中非零元素所在行和列,并存在a1,a2中;

6、[a1,a2,v]=find(a),找出矩阵中非零元素所在行和列,并存在a1、a2中,并将结果放在v中,下图所示1表示行号,2表示列号,3表示矩阵a中的非零值;

流星日食
2017-12-04 · TA获得超过1056个赞
知道小有建树答主
回答量:287
采纳率:83%
帮助的人:251万
展开全部
  • 用法一: b=find(a),a是一个矩阵,查询非零元素的位置,如果X是一个行向量,则返回一个行向量,否则,返回一个列向量。如果X全是零元素或者是空数组,则返回一个空数组,例子如下所示,也可以用b=find(a>2),这句的意思是在a中找到比较2大的元素

  • 用法二:b=find(a,2),找出a中最先出现的2个不为零的数,a是你所要找的矩阵,2参数是指数量所下图

  • 用法三:c=find(a,2,'first')用法和二基本一样,如下图

  • 用法四:c=find(a,2,'last') 这句的意思是从最后一个非零元素起,找2个不为零的元素,如下图所示

  • 用法五:[a1,a2]=find(a),找出a矩阵中非零元素所在行和列,并存在a1,a2中

  • 用法六:[a1,a2,v]=find(a),找出矩阵中非零元素所在行和列,并存在a1,a2中,并将结果放在v中,下图所示1,表示行号,2表示列号,3表示矩阵a中的非零值

  • 用法七:[a1,a2,val]=find(a>4),返回一个单位列向量,这里不满足a>4,所以出现如下图显示,最全的matlab 中的find()函数用法!

网页链接

望采纳

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
野人无事不言L
2016-03-04 · TA获得超过1413万个赞
知道顶级答主
回答量:2242万
采纳率:0%
帮助的人:144.5亿
展开全部
find函数用于返回所需要元素的所在位置 (位置的判定:在矩阵中,第一列开始,自上而下,依次为1,2,3...,然后再从第二列,第三列依次往后数) find(A)返回矩阵A中非零元素所在位置 >> A = [1 0 4 -3 0 0 0 8 6]; >> X = find(A) X = 1 3 4 8 9 find(A>5)返回矩阵A中大于5的元素所在位置 >> find(A>5) ans = 8 9 [i,j,v]=find(A) 返回矩阵A中非零元素所在的行i,列j,和元素的值v(按所在位置先后顺序输出) >> A=[3 2 0; -5 0 7; 0 0 1]; >> [i,j,v]=find(A) i = 1 2 1 2 3 j = 1 1 2 3 3 v = 3 -5 2 7 1 find(A>m,4)返回矩阵A中前四个数值大于m的元素所在位置 也是自己理解,如有不正之处,还望指正!希望我可以帮上点小忙!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我行我素850915
2017-11-15 · TA获得超过8241个赞
知道大有可为答主
回答量:5788
采纳率:77%
帮助的人:1756万
展开全部
如果对这个函数要学习,可在命令窗中help find查看用法,如果有具体问题不会用,可讲出来,帮你解决。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雨中百合秀
推荐于2017-11-17 · TA获得超过2355个赞
知道答主
回答量:8
采纳率:0%
帮助的人:0
展开全部
find函数用于返回所需要元素的所在位置 (位置的判定:在矩阵中,第一列开始,自上而下,依次为1,2,3...,然后再从第二列,第三列依次往后数)

find(A)返回矩阵A中非零元素所在位置
>> A = [1 0 4 -3 0 0 0 8 6];
>> X = find(A)

X =

1 3 4 8 9
find(A>5)返回矩阵A中大于5的元素所在位置
>> find(A>5)

ans =

8 9

[i,j,v]=find(A) 返回矩阵A中非零元素所在的行i,列j,和元素的值v(按所在位置先后顺序输出)
>> A=[3 2 0; -5 0 7; 0 0 1];
>> [i,j,v]=find(A)

i =

1
2
1
2
3

j =

1
1
2
3
3

v =

3
-5
2
7
1

find(A>m,4)返回矩阵A中前四个数值大于m的元素所在位置

也是自己理解,如有不正之处,还望指正!希望我可以帮上点小忙!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式