GNU Octave: как найти n максимальных элементов вектора



У меня вектор в Октаве такой:



[ 4 5 1 2 3 6 ]


Существует ли функция, которая возвращает n максимальных элементов этого вектора, в данном случае три самых больших-6, 5 и 4?



[6 5 4]


Функция Octave max возвращает только один максимальный элемент. Я хочу N максимальных элементов.

477   2  

2 ответов:

Вы можете использовать sort функция для этого.

В GNU Octave получаем самые большие n элементов вектора:

octave:2> X = [3 8 2 9 4]
octave:2> sort(X)

ans =
   2   3   4   8   9

octave:8> sort(X)(end-2:end)

ans =

   4   8   9

Описание

То, что sort(X)(end-2:end) означает: "отсортируйте вектор X и дайте мне элементы от 2 минус конец до конца, также известные как последние 3 элемента".

Comments

    Ничего не найдено.