Getting lowest postive number in array with it's index
4 views (last 30 days)
Show older comments
Hi,
I am trying to get lowest postive number from array , and it's index,
I got the correct lowest postive number but due to introducing of greater than sign >, the indicies numbering changed, can anyone tell me how could I obtain lowest postive number with keeping and getting correct index...
I attach the code below... (Please remember it's a part from a code, and i need to get the values as written below)
clearvars;
clc;
S=[-6.3e7 -0.0001e7 inf;5.2545 -.2996e7 inf];
[m,idx]=min(S(S(:)>0)); % THE RESULT IS CORRECT BUT INDEX IS WRONG ... INDEX SHOULD BE 2
% I UNDERSTAND NOW THE INDEX IS CHANGED AS I INTRODUCED >0 BUT I WOULD LIKE TO GET THE INDEX FROM S(:) NORMAL
0 Comments
Accepted Answer
Stephan
on 21 Mar 2021
Edited: Stephan
on 21 Mar 2021
S=[-6.3e7 -0.0001e7 inf;5.2545 -.2996e7 inf]
m_idx = [min(S(S>0)), find(S==min(S(S>0)))]
2 Comments
Stephan
on 21 Mar 2021
S=[-6.3e7 -0.0001e7 inf;5.2545 -.2996e7 inf]
[m, idx] = myFun(S)
function [m, idx] = myFun(S)
m = min(S(S>0));
idx = find(S==min(S(S>0)));
end
More Answers (0)
See Also
Categories
Find more on Matrices and Arrays 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!