Main Content

cummax

説明

M = cummax(A) は、A の要素の累積最大値を返します。

  • A がベクトルの場合、M は同じサイズと型のベクトルで、A の累積最大値が格納されます。

  • A が行列の場合、M は同じサイズと型の行列で、A の各列の累積最大値が格納されます。

  • A が多次元配列の場合、M は同じサイズと型の配列で、A のサイズが 1 より大きい最初の配列次元に沿って累積最大値が格納されます。

  • A が table または timetable の場合、cummax(A) は、各変数の累積最大値を含む table または timetable を返します。 (R2023a 以降)

M = cummax(A,dim) は、次元 dim に沿って累積最大値を返します。たとえば A が行列の場合、cummax(A,2)A の行に沿って累積最大値を返します。

M = cummax(___,direction) は、前述の任意の構文の方向を指定します。たとえば cummax(A,2,"reverse") は、A の 2 番目の次元の末尾から先頭の方向に演算を行い、A の累積最大値を返します。

M = cummax(___,nanflag) は、ANaN 値を省略するか含めるかを指定します。たとえば、cummax(A,"includenan") は各最大値の計算時に NaN 値を含めます。既定では、cummaxNaN 値を省略します。

すべて折りたたむ

ランダムな整数から成る 1 行 10 列のベクトルの累積最大値を求めます。

v = randi(10,1,10)
v = 1×10

     9    10     2    10     7     1     3     6    10    10

M = cummax(v)
M = 1×10

     9    10    10    10    10    10    10    10    10    10

3 行 3 列の行列の列の累積最大値を求めます。

A = [3 5 2; 1 6 3; 7 8 1]
A = 3×3

     3     5     2
     1     6     3
     7     8     1

M = cummax(A)
M = 3×3

     3     5     2
     3     6     3
     7     8     3

3 行 3 列の行列の行の累積最大値を求めます。

A = [3 5 2; 1 6 3; 7 8 1]
A = 3×3

     3     5     2
     1     6     3
     7     8     1

M = cummax(A,2)
M = 3×3

     3     5     5
     1     6     6
     7     8     8

2 x 2 x 3 の配列で 3 番目の次元の累積最大値を計算します。direction"reverse" に指定して、3 番目の次元の末尾から先頭の方向に演算を行います。

A = cat(3,[1 2; 3 4],[9 10; 11 12],[5 6; 7 8])
A = 
A(:,:,1) =

     1     2
     3     4


A(:,:,2) =

     9    10
    11    12


A(:,:,3) =

     5     6
     7     8

M = cummax(A,3,"reverse")
M = 
M(:,:,1) =

     9    10
    11    12


M(:,:,2) =

     9    10
    11    12


M(:,:,3) =

     5     6
     7     8

NaN 値を含む行列を作成します。

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

     3     5   NaN     4
     2     6     2     9
     1     3     0   NaN

NaN 値を含めて行列の累積最大値を計算します。NaN 値が含まれている行列の列では、最初の NaN 値が検出されるとすぐに累積最大値は NaN になります。

M = cummax(A,"includenan")
M = 3×4

     3     5   NaN     4
     3     6   NaN     9
     3     6   NaN   NaN

入力引数

すべて折りたたむ

入力配列。ベクトル、行列、多次元配列、table または timetable として指定します。要素が複素数の場合、cummax はそれらの大きさを比較します。大きさが等しければ、cummax はさらに位相角を比較します。

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

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

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

  • cummax(A,1) は、A の列の連続する要素について演算を行い、各列の累積最大値を含む A と同じサイズの配列を返します。

    cummax(A,1) column-wise operation

  • cummax(A,2) は、A の行の連続する要素について演算を行い、各行の累積最大値を含む A と同じサイズの配列を返します。

    cummax(A,2) row-wise operation

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

累積の方向。次の値のいずれかとして指定します。

  • "forward" — 操作次元の 1 から end の方向に演算を行います。

  • "reverse" — 操作次元の end から 1 の方向に演算を行います。

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

  • "omitmissing" または "omitnan" — 累積最大値の計算時に ANaN 値を無視します。A の先頭に連続した NaN 値が含まれている場合、M の対応する要素は NaN です。"omitmissing""omitnan" の動作は同じです。

  • "includemissing" または "includenan" — 累積最大値の計算時に ANaN 値を含めます。A の最初の NaN 値が検出されるとすぐに M の要素は NaN になります。"includemissing""includenan" の動作は同じです。

ヒント

  • 多くの累積関数では、"reverse" オプションを使用することで、入力配列の反転や鏡映を行わなくても、逆方向の計算を簡単に実行できます。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

バージョン履歴

R2014b で導入

すべて展開する

参考

| | | | |