ツイッターはこちら

MATLABでの最大値の求め方【max】

1 min

今回は、MATLABでの最大値の求め方について解説します。

MathWorksのサイトの説明がわかりにくいという方は、是非こちらを参考にしてください

ベクトルの要素の最大値の求め方【max(A)】

MATLABにおけるベクトルは、このようなものです。

A=[1 2 3 2]

B=[1
     2
     3
     4]
 

1×n、n×1のような行列のことをベクトルと呼びます。

このベクトルの要素の中の最大値を求めたい場合、以下のようにコードを書きましょう。

A=[1 2 3 2];

max(A)

これを実行すると、

最大値の3が出力されました。

行列の要素の最大値の求め方【max(A(:))】

では、「m×n列の行列でも同じ様にすればいいの?」と思うかも知れませんが、少し違います。

例えば、

A=[1 2 3 2
      3 4 6 1
      2 5 3 1];
 

このような3×4の行列に対して、先程と同様にmax(A)とすると、

???となりますよね(笑)

実はこれ、行列の各列の最大値を求めているんです。

じゃあ、行列の全要素の中の最大値を求めたければ、どうすればいいの?ということなんですが、

このようにAに(:)をつけて、maxの()の中にA(:)入れてください。 

アルゴリズム
  1. Aに(:)をつけることで、行列Aを12×1の行ベクトルに変換
  2. max(A(:))により、ベクトルA(:)の全要素の中から最大値を出力

【補足】行列の各行の最大値の求め方【max(A,[],2)】

先程、行列Aをmaxにそのまま入れると、行列の各列の最大値が求められることを説明しました。

「じゃあ、行列の各行の最大値の求め方もあるの?」ということなんですが、あります。

以下のように記述してください。

A=[1 2 3 2
      3 4 6 1
      2 5 3 1];

max(A,[],2)

これを実行すると、

行列の各行の最大値が求められましたね。

今回は以上となります。

フルショ

フルショ

2019年春に理系大学院を卒業して、大手メーカーに勤める25歳です!
海外ノマドにあこがれて、会社に頼らない生き方を現在模索中。

FOLLOW

カテゴリー:
関連記事