max and min values in an array

108 ビュー (過去 30 日間)
Deep P
Deep P 2016 年 12 月 12 日
コメント済み: dpb 2016 年 12 月 12 日
Hello,
I am trying to find positive and negative maximum and minimum in an array.
Lets say I have a Matrix A=[1 -2 5;3 7 -9,4 6 8] if I use max and min functions on A,I get max(A)=[4 7 8] and min(A)=[1 -2 -9]. Since I wanted one singe number I performed max and min operations again.
max(max(A))= 8 and min(min(A))=-9
My requirement here is to get both positive and negative maximum and positive and negative minimum. Is there any way to find that?
Thank you.
  1 件のコメント
the cyclist
the cyclist 2016 年 12 月 12 日
Your language is not very clear to me. By "maximum" and "minimum", are you talking about the magnitude? So, is the following correct?
  • Maximum (magnitude) positive = 8
  • Minimum (magnitude) positive = 1
  • Maximum (magnitude) negative = -9
  • Minimum (magnitude) positive = -2

サインインしてコメントする。

回答 (2 件)

the cyclist
the cyclist 2016 年 12 月 12 日
編集済み: the cyclist 2016 年 12 月 12 日
If what I said in my comment is correct, then do the following:
maxMagPos = max(A(A>0))
minMagPos = min(A(A>0))
maxMagNeg = min(A(A<0))
minMagNeg = max(A(A<0))
  3 件のコメント
the cyclist
the cyclist 2016 年 12 月 12 日
The best form of thanks is upvoting and/or accepting answers. This rewards the contributor, and points future users to good answers.
I suggest you open a new post for your second question, which is quite different in nature, not really related to this one.
dpb
dpb 2016 年 12 月 12 日
@OP If this is something you do more than once, then I'd suggest writing a little utility function that returns the values in a single call; either the four variables or an array depending on how your application most frequently would use the results.

サインインしてコメントする。


dpb
dpb 2016 年 12 月 12 日
It's the colon operator that's your friend here...
mnx=min(x(:)); % doc colon for details of the "magic" here...

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by