The Code to replace non-threshold indexes in Array
10 views (last 30 days)
Show older comments
Hello,
A = randi(5,5);
idx = find(A > 3);
A(idx) = log10(A(idx));
After running the above lines of code, what's the easiest(fastest) way to replace the non idx index in A with a certain value(100 for example)?
A(~idx) = 100; doesn't work the way I intended to.
Thanks!
0 Comments
Accepted Answer
Steven Lord
on 14 Oct 2024
Get rid of the find call.
A = randi(5,5)
idx = (A > 3) % Make a logical mask
A(idx) = log10(A(idx)) % Use the logical mask to identify locations to change
A(~idx) = 100 % Use the negation of the logical mask to identify locations to change
0 Comments
More Answers (0)
See Also
Categories
Find more on Characters and Strings 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!