功能:查找非零元素的索引并返回该索引的值
语法:
k=find(x)
返回一个包含数组x钟每个非零元素的线性索引的向量
1、若x为向量,则find返回方向与x相同的向量
2、如果x为多维数组,则find返回由结果的线性索引组成的列向量
3、如果x为全零元素或为空,则find返回一个空的数组
k=find(x,n)
返回x非零元素的前n个索引值
k=find(x,n,direction)
direction 为 'last',意为查找与 X 中的非零元素对应的最后 n 个索引。direction 的默认值为 'first',即查找与非零元素对应的前 n 个索引。
结果:
k=find(x)的第一种情况:
k=find(x)的第二种情况:
a的第一维度的值全为3,第二位的值全为4,第三维度的(2,2)处的值为20。所以三维数组a的非零个数为19个。返回的索引值应该也是19个索引。
k=find(x)的第三种情况:
结果如描述一致。
k=find(x,n)
返回的结果是5个。
k=find(x,n,'last'):
(转换成向量是按列读取的,所以返回的是索引是5,该索引对应的值是5)
注意:find可用于查找满足条件的值
如:查找零元素的索引:k=find(~x)
查找特定的值的索引:k=find(x==10)
查找大于特定值的索引:k=find(x>20)
条件可为多个条件……
参考:matlab帮助文档。