Problem 640. Getting logical indexes
This is a basic MATLAB operation. It is for instructional purposes.
---
Logical indexing works like this.
thresh = 4; vec = [1 2 3 4 5 6 7 8];
vi = (vec > thresh)
vi =
0 0 0 0 1 1 1 1
Once you have this TRUE FALSE vector (I call it vi: Valid Indices)
It can be used to get the values out:
big = vec(vi)
big =
5 6 7 8
Given a vector, vec, and a value, v, return a binary vector that represents the indices where vector, vec, is equal to scalar, v.
Note, this works just as well with scalars and matrices.
----
To get the indices where this comparison is true, see this Cody problem.
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers1111
Suggested Problems
-
"Low : High - Low : High - Turn around " -- Create a subindices vector
540 Solvers
-
Getting the row and column location from a matrix
286 Solvers
-
Find the sides of an isosceles triangle when given its area and height from its base to apex
1911 Solvers
-
585 Solvers
-
6413 Solvers
More from this Author51
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!