How could I recreate the find function
Show older comments
I need to find values in a matrix that equal a given value (10), but I need to know their index/position in the matrix (won't use find function).
so if the matrix a = [2 10 10 5 7 4 10] I want to run my function and get ans = [2 3 7] to find where the 10's are in the first function
Answers (1)
Star Strider
on 30 Oct 2016
One approach:
a = [2 10 10 5 7 4 10];
idx = ((a == 10).*[1:numel(a)]);
idx(idx > 0)
If you want to use this with a matrix, you will need to use the reshape function to convert it to a linear vector, and then the ind2sub function to get the row and column indices.
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!