find
Returns the position of non-zero elements in a matrix.
Syntax
idx = find(x)
idx = find(x,n)
idx = find(x,n,dir)
[i,j] = find(...)
[i,j,v] = find(...)
Inputs
- x
- The matrix to search for non-zero elements.
- n
- The maximum number of elements to return.
- dir
- The direction in which to start the search, either "first" or "last". "first" searches the matrix from the beginning, whereas "last" starts the search from the end of the matrix.
Outputs
- idx
- A vector of the vector indices of the nonzero elements. To achieve this result, OML treats the matrix as if the columns of the given matrix are one vector.
- i,j
- The row and column indices of nonzero elements in the given matrix.
- v
- A vector of the found nonzero elements.
Examples
Simple matrix
input:
R = find([1,0;0,1])
R = [ 1 ; 4 ]
Simple matrix input with a maximum return of
1:
R = find([1,0;0,1],1)
R = 1
Simple matrix input with a maximum return of 1, starting the search from the
beginning:
R = find([1,0;0,1],1,'first')
R = 1
Simple matrix input with a maximum return of 1, starting the search from the
end:
R = find([1,0;0,1],1,'last')
R = 4
Two variable return with a matrix
input:
[a,b]=find([0,1,0,-1])
a = [ 1 1 ]
b = [ 2 4 ]
Three variable return with a matrix
input:
[a,b,c]=find([0,1,0,-1])
a = [ 1 1 ]
b = [ 2 4 ]
c = [ 1 -1 ]