max

Максимальные элементы массива

Синтаксис

M = max(A)
M = max(A,[],dim)
M = max(A,[],nanflag)
M = max(A,[],dim,nanflag)
[M,I] = max(___)
M = max(A,[],'all')
M = max(A,[],vecdim)
M = max(A,[],'all',nanflag)
M = max(A,[],vecdim,nanflag)
[M,I] = max(A,[],___,'linear')
C = max(A,B)
C = max(A,B,nanflag)

Описание

пример

M = max(A) возвращает максимальные элементы массива.

  • Если A является вектором, то max(A) возвращает максимум A.

  • Если A является матрицей, то max(A) является вектором - строкой, содержащим максимальное значение каждого столбца.

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

пример

M = max(A,[],dim) возвращает максимальный элемент по измерению dim. Например, если A является матрицей, то max(A,[],2) является вектор-столбцом, содержащим максимальное значение каждой строки.

пример

M = max(A,[],nanflag) задает, включать ли или не использовать значения NaN в вычислении. Например, max(A,[],'includenan') включает все значения NaN в A, в то время как 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 является матрицей, то max(A,[],[1 2]) вычисляет максимум по всем элементам в A, поскольку каждый элемент матрицы содержится в срезе массивов, заданном размерностями 1 и 2.

M = max(A,[],'all',nanflag) вычисляет максимум по всем элементам A при использовании опции nanflag.

M = max(A,[],vecdim,nanflag) задает несколько размерностей, которых задают направление расчета при использовании опции nanflag.

пример

[M,I] = max(A,[],___,'linear') возвращает линейный индекс в A, который соответствует максимальному значению в A. Этот синтаксис не поддержан, когда A имеет, вводят categorical, datetime или 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

max(A) также приведет к этому результату, поскольку 'omitnan' является опцией по умолчанию.

Используйте флаг 'includenan', чтобы возвратить NaN.

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

Создайте трехмерный массив и вычислите максимум по каждой странице данных (строки и столбцы).

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', чтобы также возвратить линейные индексы I, таким образом что M = A(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) также.

Если A имеет, вводят categorical, то это должно быть порядковым.

Типы данных: 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.

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

  • Если dim = 1, то max(A,[],1) возвращает вектор - строку, содержащий самый большой элемент в каждом столбце.

  • Если dim = 2, то max(A,[],2) возвращает вектор-столбец, содержащий самый большой элемент в каждой строке.

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

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

Рассмотрите 2 3х3 входным массивом, A. Затем max(A,[],[1 2]) возвращает 1 1 3 массивами, элементы которых являются максимумами, вычисленными по каждой странице A.

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Дополнительный входной массив, заданный как скаляр, вектор, матрица или многомерный массив. Числовые входные параметры A и B должны или быть одного размера или иметь размеры, которые совместимы (например, A является M-by-N матрица, и B является скаляром или 1-by-N вектор - строка). Для получения дополнительной информации см. "Совместимые размеры массивов для основных операций".

Если A и B являются datetime, длительностью или категориальными массивами, то они должны быть одного размера, если каждый не скаляр.

  • A и B должны быть совпадающим типом данных, если каждый не double. В этом случае типом данных другого массива может быть single, duration или любой целочисленный тип.

  • Если A и B являются порядковыми категориальными массивами, у них должны быть те же наборы категорий с тем же порядком.

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

Условие NaN, заданное как одно из этих значений:

  • 'omitnan' — Проигнорируйте все значения NaN во входе. Если всеми элементами является NaN, то max возвращает первый.

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

Для массивов datetime можно также использовать 'omitnat' или 'includenat', чтобы не использовать и включать значения NaT, соответственно.

Функция max не поддерживает опцию nanflag для массивов categorical.

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

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

свернуть все

Максимальные значения, возвращенные как скаляр, вектор, матрица или многомерный массив. size(M,dim) является 1, в то время как размеры всех других размерностей совпадают с размером соответствующей размерности в A, если size(A,dim) не является 0. Если size(A,dim) является 0, то M является пустым массивом с тем же размером как A.

Индексируйте, возвращенный как скаляр, вектор, матрица или многомерный массив. I одного размера как первый вывод.

Когда 'linear' не задан, I является индексом в операционную размерность. Когда 'linear' задан, I содержит линейные индексы A, соответствующего максимальным значениям.

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

Максимальные элементы от A или B, возвращенного как скаляр, вектор, матрица или многомерный массив. Размер C определяется неявным расширением размерностей A и B. Для получения дополнительной информации см. "Совместимые размеры массивов для основных операций".

Тип данных C зависит от типов данных A и B:

  • Если A и B являются совпадающим типом данных, то C совпадает с типом данных A и B.

  • Если или A или B является single, то C является single.

  • Если или A или B являются целочисленным типом данных с другим скалярный double, то C принимает целочисленный тип данных.

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

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

| | | | |

Представлено до R2006a