cummax

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

Описание

пример

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 также сравнивает углы фазы.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | duration
Поддержка комплексного числа: Да

Размерность для работы, заданная как положительный целочисленный скаляр Если значение не задано, то по умолчанию это первое измерение массива, не равный 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.

Совет

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

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

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

.

Генерация кода GPU
Сгенерируйте код CUDA ® для графических процессоров NVIDIA ® с помощью GPU Coder™

.

См. также

| | | | |

Введенный в R2014b