I don't understand this command : F=find(B>4)
3 次查看(过去 30 天)
显示 更早的评论
If I have this matrix :
B=[1 2 3 4; 5 6 7 8], why when I run this -> F=find(B>4) , the result is:
2
4
6
8
?
Thank you
0 个评论
回答(2 个)
Cris LaPierre
2023-5-16
That looks correct. What is it you are expecting?
Since the output is returning a single index for each value found, it is uslng linear indexing. You can read more about that here: https://www.mathworks.com/help/matlab/math/array-indexing.html#MatrixIndexingExample-2
If you prefer row & column index, use the following syntax
Paul
2023-5-16
B is a 2D matrix.
B=[1 2 3 4; 5 6 7 8]
This command finds the "linear indices" of the elements of B that satisfy the criteria
find(B>4)
The linear indices are the indices of B when it's viewed a s 1D vector formed by vertically concatenating its columns, which can be shown as
B(:)
The 2nd, 4th, 6th, and 8th elements of B(:) are the elements greater than 4
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!