how fined vector index
Show older comments
I have a vector of 60,000 x 1, each part containing the values 0-9
What do I need to do to find out in which cells, for example, the value is 1?
The goal is to have an index of cells equal to 1
4 Comments
Athrey Ranjith Krishnanunni
on 18 Jan 2021
myVector = randi([0,9],60e3,1); % vector of 60,000x1 containing integers between 0 and 9
linearIdx = find(myVector == 1); % linear indices of elements equal to 1
You might also want to look at ind2sub if you plan to not just limit to vectors.
Also, most applications support logical indexing, which is faster and uses less memory than linear indexing, so maybe look that up too.
lech king
on 18 Jan 2021
Jan
on 19 Jan 2021
@ARK: Please post this as an answer, not as a comment. Then we can vote for it and select it as accepted asnwer.
Athrey Ranjith Krishnanunni
on 20 Jan 2021
@Jan I didn't know whether OP wanted a more complicated solution, so I just suggested this simplified version to see if it'll serve their purpose. I'll put it up as the answer.
Accepted Answer
More Answers (0)
Categories
Find more on Matrix Indexing 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!