ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

max

説明

M = max(A) は、配列の最大要素を返します。

  • A がベクトルの場合、max(A)A の最大値を返します。

  • A が行列の場合、max(A) は各列の最大値を含む行ベクトルになります。

  • A が多次元配列の場合、max(A) は、サイズが 1 でない最初の配列次元に対して作用します。ここでは要素をベクトルとして扱います。この次元のサイズは 1 になりますが、他のすべての次元のサイズは変化しません。A が、最初の次元の長さが 0 である空の配列の場合、max(A) は、A と同じサイズの空の配列を返します。

M = max(A,[],dim) は次元 dim に沿って最大要素を返します。たとえば、A が行列の場合、max(A,[],2) は各行の最大値をもつ列ベクトルになります。

M = max(A,[],nanflag) は、計算に NaN 値を含めるか省略するかを指定します。たとえば、max(A,[],'includenan') では A 内のすべての NaN 値が含まれますが、max(A,[],'omitnan') ではこれらが無視されます。

M = max(A,[],dim,nanflag) は、nanflag オプションの使用時に動作する対象の次元も指定します。

また、[M,I] = max(___) は、前述の任意の構文で A の最大値に対応する操作次元へのインデックスを返します。

M = max(A,[],'all') は、A のすべての要素の最大値を検索します。この構文は、MATLAB® R2018b 以降で有効です。

M = max(A,[],vecdim) は、ベクトル vecdim で指定された次元の最大値を計算します。たとえば、A が行列の場合、行列内の各要素は次元 1 と次元 2 で定義された配列スライスに含まれるため、max(A,[],[1 2])A のすべての要素の最大値を計算します。

M = max(A,[],'all',nanflag) は、nanflag を使用している場合、A のすべての要素の最大値を計算します。

M = max(A,[],vecdim,nanflag) は、nanflag オプションの使用時に動作の対象となる、複数の次元を指定します。

[M,I] = max(A,[],___,'linear')A の最大値に対応する A への線形インデックスを返します。この構文は、A の型が categoricaldatetime、または duration の場合はサポートされません。

C = max(A,B) は、A または B から得た最大要素からなる配列を返します。

C = max(A,B,nanflag) は、NaN 値を処理する方法も指定します。

すべて折りたたむ

ベクトルを作成してその最大要素を計算します。

A = [23 42 37 18 52];
M = max(A)
M = 52

複素数ベクトルを作成してその最大要素、つまり最大の大きさをもつ要素を計算します。

A = [-2+2i 4+i -1-3i];
max(A)
ans = 4.0000 + 1.0000i

行列を作成し、その各列にある最大要素を計算します。

A = [2 8 4; 7 3 9]
A = 2×3

     2     8     4
     7     3     9

M = max(A)
M = 1×3

     7     8     9

行列を作成し、その各行にある最大要素を計算します。

A = [1.7 1.2 1.5; 1.3 1.6 1.99]
A = 2×3

    1.7000    1.2000    1.5000
    1.3000    1.6000    1.9900

M = max(A,[],2)
M = 2×1

    1.7000
    1.9900

ベクトルを作成し、NaN 値を除いてその最大値を計算します。

A = [1.77 -0.005 3.98 -2.95 NaN 0.34 NaN 0.19];
M = max(A,[],'omitnan')
M = 3.9800

'omitnan' が既定のオプションであるため、max(A) でも同じ結果が得られます。

NaN を返すには 'includenan' フラグを使用します。

M = max(A,[],'includenan')
M = NaN

行列 A を作成し、各列の最大要素と、それらの要素が現れる A の行インデックスを計算します。

A = [1 9 -2; 8 4 -5]
A = 2×3

     1     9    -2
     8     4    -5

[M,I] = max(A)
M = 1×3

     8     9    -2

I = 1×3

     2     1     1

3 次元配列を作成し、データのページ (行と列) ごとの最大値を計算します。

A(:,:,1) = [2 4; -2 1];
A(:,:,2) = [9 13; -5 7];
A(:,:,3) = [4 4; 8 -3];
M1 = max(A,[],[1 2])
M1 = 
M1(:,:,1) =

     4


M1(:,:,2) =

    13


M1(:,:,3) =

     8

R2018b 以降、配列のすべての次元の最大値を計算するには、ベクトルの次元引数で各次元を指定するか、'all' オプションを使用します。

M2 = max(A,[],[1 2 3])
M2 = 13
Mall = max(A,[],'all')
Mall = 13

行列 A を作成して行列 M で各行の最大値を返します。'linear' オプションを使用して、M = A(I) のように線形インデックス I も返します。

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

     1     2     3
     4     5     6

[M,I] = max(A,[],2,'linear')
M = 2×1

     3
     6

I = 2×1

     5
     6

maxvals = A(I)
maxvals = 2×1

     3
     6

行列を作成し、その各要素とスカラー値を比較して大きい方の値を返します。

A = [1 7 3; 6 2 9]
A = 2×3

     1     7     3
     6     2     9

B = 5;
C = max(A,B)
C = 2×3

     5     7     5
     6     5     9

入力引数

すべて折りたたむ

入力配列。スカラー、ベクトル、行列または多次元配列として指定します。

  • A が複素数の場合、max(A) は、最大の大きさをもつ複素数を返します。大きさが等しい場合、max(A) は最大の大きさと最大の位相角をもつ値を返します。

  • A がスカラーの場合、max(A)A を返します。

  • A が 0 行 0 列の空の配列の場合、max(A) も同じく空です。

Acategorical 型の場合、順序配列でなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration
複素数のサポート: あり

演算の対象の次元。正の整数のスカラーとして指定します。値を指定しない場合、既定値は、サイズが 1 ではない最初の配列の次元です。

次元 dim は、長さが 1 に縮小した次元を示します。size(M,dim)1 ですが、size(A,dim)0 でない限り、他のすべての次元のサイズは変化しません。size(A,dim)0 である場合、max(A,dim)A と同じサイズの空の配列を返します。

2 次元の入力配列 A について考えます。

  • dim = 1 の場合、max(A,[],1) は、各列の最大要素を含む行ベクトルを返します。

  • dim = 2 の場合、max(A,[],2) は、各行の最大要素を含む列ベクトルを返します。

dimndims(A) より大きい場合、maxA を返します。

次元のベクトル。正の整数のベクトルとして指定します。各要素は入力配列の次元を表します。指定された操作次元の出力の長さは 1 で、その他は同じままです。

2 x 3 x 3 の入力配列 A を考えます。max(A,[],[1 2]) は、1 x 1 x 3 の配列を返します。この配列の要素は、A のページごとに計算された最大値です。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

追加の入力配列。スカラー、ベクトル、行列または多次元配列として指定します。数値入力 AB は、同じサイズであるか、互換性のあるサイズでなければなりません (たとえば、AMN 列の行列で、B がスカラーまたは 1N 列の行ベクトル)。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

AB が datetime 配列、duration 配列または categorical 配列の場合は、一方がスカラーでないかぎり、同じサイズでなければなりません。

  • AB は、一方が double 型でないかぎり、同じデータ型でなければなりません。どちらかが double 型の場合、もう一方の配列のデータ型は singleduration または任意の整数型になります。

  • AB が順序 categorical 配列である場合は、これらは同じ順序の同じカテゴリ セットでなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration
複素数のサポート: あり

NaN の条件。次の値のいずれかとして指定します。

  • 'omitnan' — 入力にあるすべての NaN 値を無視します。すべての要素が NaN の場合、max は 1 つ目を返します。

  • 'includenan' — 入力にある NaN 値を計算に含めます。

datetime 配列では、'omitnat' を使用して NaT 値を省略し、あるいは 'includenat' を使用して同値を含めることができます。

関数 max は、categorical 配列については nanflag オプションをサポートしません。

データ型: char

出力引数

すべて折りたたむ

最大値。スカラー、ベクトル、行列または多次元配列として返されます。size(M,dim)1 ですが、size(A,dim)0 でない限り、他のすべての次元のサイズは A の対応する次元のサイズと一致します。size(A,dim)0 である場合、MA と同じサイズの空の配列です。

インデックス。スカラー、ベクトル、行列または多次元配列として返されます。I は最初の出力と同じサイズになります。

'linear' が指定されていない場合、I は操作次元へのインデックスです。'linear' が指定されている場合、I には最大値に対応する A の線形インデックスが含まれます。

最大要素が複数回発生する場合、I には最初に発生した値に対するインデックスが含まれます。

A または B からの最大要素。スカラー、ベクトル、行列または多次元配列として返されます。C のサイズは AB の次元の暗黙的な拡張によって決定されます。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

C のデータ型は、A および B のデータ型によって次のように異なります。

  • AB のデータ型が同じ場合、C のデータ型は A および B と同じです。

  • A または B のいずれかが single の場合、Csingle になる。

  • AB の一方が整数データ型で、もう一方が double 型のスカラーである場合、C は整数データ型になります。

拡張機能

R2006a より前に導入