MATLAB Answers

Finding maximum in a matrix

1 view (last 30 days)
Suppose I have 1000x1 matrix and my data is from (50,60) and then from (160,170) and so on (i.e randomly distributed), What I want is to find maximum out of this 50 to 60 location and then maximum from 160 to 170 location and so on. How to find this ?

  3 Comments

Walter Roberson
Walter Roberson on 22 Jun 2019
Are those data ranges or are they index locations ?
If they are index locations, are the locations known ahead of time?
Rohan  Mehta
Rohan Mehta on 22 Jun 2019
index locations
Rohan  Mehta
Rohan Mehta on 22 Jun 2019
yes these locations are stored in another matrix

Sign in to comment.

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 22 Jun 2019
Edited: KALYAN ACHARJYA on 22 Jun 2019
Suppose mat is 1000x1 matrix
%this will give the maximum value within the matrix uptp 50 rows and 60 colm
mat1=mat(1:50,1:60);
max1=max(mat1(:));
You can do the same form other also
mat2=mat(1:160,1:170);
max2=max(mat2(:));
Is this you are looking for?

  4 Comments

Show 1 older comment
KALYAN ACHARJYA
KALYAN ACHARJYA on 22 Jun 2019
to read the index of maximum elements do the following
max1=max(a(:));
[r1,c1]=find(a==max1)
As your comment is confusing, though the question seems easy, thats why I have provided the how to find maimum from a matrix and read the index of maximum elements. Rest you can store the indeces as you want.
Rohan  Mehta
Rohan Mehta on 24 Jun 2019
Hello Sir this piece of code almost solved my problem As I have found all the maximums but one doubt is how to assign the location's of these maximum to another matrix ?
KALYAN ACHARJYA
KALYAN ACHARJYA on 24 Jun 2019
how to assign the location's of these maximum to another matrix?
The second part of comment is not clear for me.
Are you looking for this one?
mat_other(r1,c1)
%..........^ index values from first matrix having maximum value

Sign in to comment.

More Answers (0)

Sign in to answer this question.