matlab中find函数参数代表什么意思?
发布网友
发布时间:2022-04-22 22:07
我来回答
共2个回答
热心网友
时间:2023-07-01 07:48
[r,c,v]=find(A),找到矩阵A中不为0的元素并返回
r找到的行,v找到的列,不为0元素的值
例如你用[r c v]=find([3 0;0 4]);
也就是矩阵|3 0|,从中找不为0的数,就会返回
|0 4|
r =
1
2
c =
1
2
v =
3
4
其中r c v的长度相等,一一对应表示
找到非零元素是 1行1列的3,而2行2列的4
然而通常多数用find来需找符合逻辑判断条件的元素的下标
其实,这个时候是分开两部来做的
首先逻辑判断条件实际上是一个表达式,可以返回一个逻辑矩阵
返回的矩阵中对应原来符合逻辑条件的元素的位置就会是1,不符合条件的就是0
你可以试一下 刚才的矩阵
X=[3 0;0 4];
X>2
ans =
1 0
0 1
返回的矩阵中符合条件大于2的位置是1,不符合的位置是0
然后我们再用find去寻找时r,c返回了不为0的元素的行列位置,而v返回的值就都是1了
由于通常我们用find函数多是find一个逻辑表达式,也就是不是0就是1的矩阵
所以的到的v都是1,平常我们就没有必要反会它了
但是实际上find是找所有非零元素的,如果有一天你需要得到矩阵中多有非零元素的值
的时候,别忘了可以利用这个返回的v
热心网友
时间:2023-07-01 07:49
find(判断语句) 就是找出 满足你判断语句的数据索引