Matlab中Find函数用法
1.对官网上用法做一下简单说明。
[m,n,v]=find(logical expression,amount,direction ) %m表示返回的行标,n表示返回的列下标,v表示在原判断矩阵满足条件位置数值,logical epression代表逻辑判断表达式,amount表示数量,direction表示方向first表示正方向,last表示负方向。
example:
-> A=[1 2 3;0 4 5;6 7 0];
->[m,n,v]=find(A,5,'first')
->m =
1
3
1
2
3
->n =
1
1
2
2
2
->v =
1
6
2
4
7
由此可以看出[m,n]=(1,1) (3,1) (1,2) (2,2) (3,2) 对应坐标值
V则为取出的值为 :[1 6 2 4 7];
由此可以看出find函数对于数组的检索顺序是列方向检索。
2.用法比较,直接逻辑比较式比较。
example:A>0;
->ans =
1 1 1
0 1 1
1 1 0
得到的是逻辑表达式。
同样可以通过A(A>0)=value ,可以直接进行修改满足坐标点处值或者返回满足条件的值(所属于A),但是只能通过得到的逻辑表达式判断0,1得到对应点的坐标,