max value from particular set of rows and columns

13 次查看(过去 30 天)
Guys, I have a 12X40 matrix. I want to search for the max value but in certain rows and columns. Say, I want to search for max in first three rows and last three rows and column number 2 5 8 14 16 and35. It should pick the max. from these locations only. I tried a=[1 2 3 10 11 12] b=[2 5 8 14 16 35] c=max(max(matrix(a,b))

回答(2 个)

Image Analyst
Image Analyst 2015-3-8
编辑:Image Analyst 2015-3-8
Try this:
matrix = rand(12, 40) % Sample data
a=[1 2 3 10 11 12]
b=[2 5 8 14 16 35]
% Extract only the rows we care about
subMatrix = matrix(a, :);
% Extract only the columns we care about
subMatrix = subMatrix(:, b)
% Find the max in what's left:
theMax = max(subMatrix(:))
  4 个评论
Image Analyst
Image Analyst 2015-3-8
Well, yes it should have been the same but you said it didn't work, so in the cases where the obvious method does not work, I break it up into smaller parts, sub-expressions, to make sure each sub-step works properly, so that's what I did. I later ran your code and found that it gave the same answer, so I'm not sure what went wrong.

请先登录,再进行评论。


Guillaume
Guillaume 2015-3-8
You've done it the right way, so if it's not giving you the expected result the problem is somewhere else.
Possibly, post the content of your matrix and the result you expect.
  2 个评论
Ace_ventura
Ace_ventura 2015-3-8
i tried it on a randomly generated matrix but did not get the desired result
Ace_ventura
Ace_ventura 2015-3-8
I got the answer dis time.I dont know what went wrong the first time.Thanks Guillaume

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by