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 Solvers1103
Suggested Problems
-
Project Euler: Problem 1, Multiples of 3 and 5
3118 Solvers
-
Get the elements of diagonal and antidiagonal for any m-by-n matrix
473 Solvers
-
723 Solvers
-
find the maximum element of the matrix
490 Solvers
-
Fix the last element of a cell array
1298 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!