cummax

Совокупный максимум

Синтаксис

M = cummax(A)
M = cummax(A,dim)
M = cummax(___,direction)
M = cummax(___,nanflag)

Описание

пример

M = cummax(A) возвращает элементы совокупного максимума A. По умолчанию cummax(A) действует вдоль первого измерения массива, размер которого не равняется 1.

  • Если A является вектором, то cummax(A) возвращает вектор, одного размера содержащий совокупные максимумы A.

  • Если A является матрицей, то cummax(A) возвращает матрицу, одного размера содержащий совокупные максимумы в каждом столбце A.

  • Если A является многомерным массивом, то cummax(A) возвращает массив, одного размера содержащий совокупные максимумы вдоль первого измерения массива A, размер которого не равняется 1.

пример

M = cummax(A,dim) возвращает совокупные максимумы по измерению dim. Например, если A является матрицей, то cummax(A,2) возвращает совокупные максимумы вдоль строк A.

пример

M = cummax(___,direction) опционально задает направление с помощью любого из предыдущих синтаксисов. Вы должны задать A и, опционально, можете задать dim. Например, cummax(A,2,'reverse') возвращает совокупные максимумы A путем работы от конца до начала второго измерения A.

пример

M = cummax(___,nanflag) задает, включать ли или не использовать значения NaN от вычисления для какого-либо из предыдущих синтаксисов. cummax(A,'includenan') включает все значения NaN в вычисление, в то время как cummax(A,'omitnan') игнорирует их.

Примеры

свернуть все

Найдите совокупные максимумы 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 2 3 массивами. Задайте direction как 'reverse', чтобы работать от конца третьей размерности к началу.

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, и вычислите совокупные максимумы. По умолчанию cummax игнорирует значения NaN.

A = [3 5 NaN 9 0 NaN];
M = cummax(A)
M = 1×6

     3     5     5     9     9     9

Если вы включаете значения NaN в вычисление, то совокупный максимум становится NaN, как только с первым значением NaN в A сталкиваются.

M = cummax(A,'includenan')
M = 1×6

     3     5   NaN   NaN   NaN   NaN

Входные параметры

свернуть все

Входной массив, заданный как векторный, матричный или многомерный массив. Для комплексных элементов cummax сравнивает значение элементов. Если значения равны, cummax также сравнивает углы фазы.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | длительность
Поддержка комплексного числа: Да

Величина для работы, заданная как положительный целый скаляр. Если значение не задано, то по умолчанию это первый размер массива, не равный 1.

Рассмотрите двумерный входной массив, A:

  • cummax(A,1) работает на последовательных элементах в столбцах A и возвращает массив, одного размера как A с совокупными максимумами в каждом столбце.

  • cummax(A,2) работает на последовательных элементах в строках A и возвращает массив, одного размера как A с совокупными максимумами в каждой строке.

cummax возвращает A, если dim больше, чем ndims(A).

Направление накопления, заданного как 'forward' (значение по умолчанию) или 'reverse'.

  • 'forward' работает от 1 до end активной размерности.

  • 'reverse' работает от end до 1 активной размерности.

Типы данных: char

Условие NaN, заданное как одно из следующих значений:

  • 'omitnan' — Проигнорируйте все значения NaN во входном параметре. Если входной параметр имеет последовательные ведущие значения NaN, то cummax возвращает NaN в соответствующих элементах вывода. Например, cummax([NaN 7 13 6],'omitnan') возвращает вектор - строку [NaN 7 13 13].

  • 'includenan' — Включайте значения NaN от входного параметра при вычислении совокупных максимумов, приведении к значениям NaN в выводе.

Типы данных: char

Выходные аргументы

свернуть все

Совокупные максимумы, возвращенные как вектор, матрица или многомерный массив. Размер и тип данных M совпадают с теми из A.

Советы

  • Опция 'reverse' во многих кумулятивных функциях позволяет быстрые направленные вычисления, не требуя щелчка или отражения входного массива.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| | | | |

Введенный в R2014b

Была ли эта тема полезной?