Logical Indexing with Condition Involving Functions

4 views (last 30 days)
Suppose I created a function F, and I want to find all elements a in an array A such that F(a) is some value of the function. Is there any way to do this with logical indexing (or some other method)? I tried to use idx = (F(A) == 1), but it has been giving me error messages about different numbers of elements. Thanks in advance!
  2 Comments
Stephen23
Stephen23 on 5 May 2021
"but it has been giving me error messages about different numbers of elements"
Please show the complete error message. This means all of the red text.
Andrew Anderson
Andrew Anderson on 5 May 2021
"Unable to perform assignment because the left and right sides have a different number of elements."

Sign in to comment.

Answers (1)

VBBV
VBBV on 5 May 2021
%if true
idx = find(A(a) == 1)
Use it with find function for element indices
  2 Comments
Stephen23
Stephen23 on 5 May 2021
Note that the question specifically requests logical indices, not linear indices.
Andrew Anderson
Andrew Anderson on 5 May 2021
This may suffice, as I do not have to use logical indexing (I will edit the question accordingly). I will try it out some time.

Sign in to comment.

Products


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!