maxk

Найдите k самыми большими элементами массива

Синтаксис

B = maxk(A,k)
B = maxk(A,k,dim)
B = maxk(___,'ComparisonMethod',c)
[B,I] = maxk(___)

Описание

пример

B = maxk(A,k) возвращает k самые большие элементы A.

  • Если A является вектором, то maxk возвращает вектор, содержащий k самые большие элементы A.

  • Если A является матрицей, то maxk возвращает матрицу, столбцы которой содержат k самые большие элементы каждого столбца A.

  • Если A является многомерным массивом, то maxk возвращает k самые большие элементы по первому измерению, размер которого не равняется 1.

пример

B = maxk(A,k,dim) определяет k самые большие элементы A по измерению dim.

пример

B = maxk(___,'ComparisonMethod',c) опционально задает, как сравнить элементы A для любого из предыдущих синтаксисов. Например, maxk(A,k,'ComparisonMethod','abs') возвращает k самые большие элементы A согласно их абсолютным значениям.

пример

[B,I] = maxk(___) находит индексы самых больших значений k A и возвращает их в I.

Примеры

свернуть все

Вычислите самые большие 3 элемента вектора.

A = 1:10;
B = maxk(A,3)
B = 1×3

    10     9     8

Вычислите самые большие 3 элемента каждой строки матрицы.

A = magic(5)
A = 5×5

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

B = maxk(A,3,2)
B = 5×3

    24    17    15
    23    16    14
    22    20    13
    21    19    12
    25    18    11

Вычислите 2 самых больших элемента комплексного вектора согласно их значению и возвратите индексы, где они расположены во входном векторе.

A = [2-2i 5+i -7-3i -1+i]
A = 1×4 complex

   2.0000 - 2.0000i   5.0000 + 1.0000i  -7.0000 - 3.0000i  -1.0000 + 1.0000i

[B,I] = maxk(A,2,'ComparisonMethod','abs')
B = 1×2 complex

  -7.0000 - 3.0000i   5.0000 + 1.0000i

I = 1×2

     3     2

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

свернуть все

Входной массив, заданный как векторный, матричный или многомерный массив.

  • Если A является вектором, то maxk возвращает вектор, содержащий k самые большие элементы A.

  • Если A является матрицей, то maxk возвращает матрицу, столбцы которой содержат k самые большие элементы каждого столбца A.

  • Если A является многомерным массивом, то maxk возвращает k самые большие элементы по первому измерению, размер которого не равняется 1.

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

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

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

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

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

Например, если A является матрицей, то maxk(A,k,1) действует вдоль строк A, вычислительных максимумов для каждого столбца.

maxk(A,k,2) действует вдоль столбцов A, вычислительных максимумов для каждой строки.

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

Метод сравнения, заданный как одно из следующего:

  • 'auto' Сравните элементы входного параметра A real(A), когда A действителен, и abs(A), когда A является комплексным.

  • действительный Сравните элементы входного параметра A real(A), когда A будет действительным или комплексным. Если A имеет элементы с равными действительными частями, то используйте imag(A), чтобы повредить связи.

  • abs Сравните элементы входного параметра A abs(A), когда A будет действительным или комплексным. Если A имеет элементы с равным значением, то используйте angle(A) в интервале (-π,π], чтобы повредить связи.

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

свернуть все

Выходной массив, возвращенный как скаляр, вектор, матрица или многомерный массив. maxk возвращает элементы k по порядку от самого большого до самого маленького. Порядок элементов в B сохраняет порядок любых равных элементов в A.

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

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

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

| |

Введенный в R2017b

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