help how can I find the minimum number and return it's index in each row?

help how can I find the minimum number and return it's index in each row?

1 Comment

I have a matrix not a vector and I need the minimum value except 0 and position of minimum value in each row

Sign in to comment.

 Accepted Answer

a=[8,2,3,4,5];
[b,ix]=min(a);
ix gives you the positions and b gives the minimum value

4 Comments

Your question has been answered, so you should accept the answer.
As for your program, it has no comment and you haven't even said what is wrong with it or what it's supposed to do. What are we supposed to correct?
Your program is just a convoluted way of doing
mm = m(:)';
Is that the correction you're looking for?
sorry dear I have a matrix not a vector I have a positive number and 0 I need to find the minimum value except 0 and I need to return the position of minimum value in each row ..but my program is not run..
dear manoj thanks alot for help me its a perfect solution but I need another update if the matrix has a zero value and the zero is the smallest value but I don't choose it I need more than zero and the smallest after zero

Sign in to comment.

More Answers (1)

To find the minimum of a row, use:
min(m, [], 2)
Probably, the simplest way to ignore 0s is to replace them with NaNs before calling min.
m(m == 0) = nan;
[mval, mcol] = min(m, [], 2);

Categories

Tags

Asked:

on 13 Nov 2014

Commented:

on 13 Nov 2014

Community Treasure Hunt

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

Start Hunting!