用法1:B = find(A),A是一个矩阵,查询非零元素的位置
如果A是一个行向量,则返回一个行向量,否则,返回一个列向量。
如果A全是零元素或者空数组,则返回一个空数组。
>> A = [0 1 2 0 4 5]A = 0 1 2 0 4 5>> B = find(A)B = 2 3 5 6>> A = [0 1 2; 0 4 5]A = 0 1 2 0 4 5>> B = find(A)B = 3 4 5 6(位置的判定:在矩阵中,第一列开始,自上而下,依次为1,2,3...,然后再从第二列,第三列依次往后数)用法2:B = find(A>2),找到A中比2大的元素的位置
用法3:B = find(A,2),找到A中最先出现的2个不为零的数的位置
用法4:B = find(A,2, 'first'),找到A中最先出现的2个不为零的数的位置
B = find(A,2, 'last'),找到A中最后出现的2个不为零的数的位置
用法5:[r, c] = find(A),找到A中非零元素所在的行和列,行存储在矩阵r中,列存储在矩阵c中
用法6:[r, c, v] = find(A),找到A中非零元素所在的行和列,行存储在矩阵r中,列存储在矩阵c中,值存储在矩阵v中(需要知道值的用此用法,其他用法只能确定位置)
>> A = [0 1 2; 0 4 5; 6 0 8]A = 0 1 2 0 4 5 6 0 8>> [r, c, v] = find(A)r = 3 1 2 1 2 3c = 1 2 2 3 3 3v = 6 1 4 2 5 8