Matlab: как отсортировать данные для каждой строки / столбца, цикла или формулы? - PullRequest
0 голосов
/ 16 февраля 2012

Вот так выглядят данные:

20.00 32.00 33.00 10.00 23.00 ......

12.00 22.00 21.00 10.00 32.00 ......

10.00 21.00 21.00 34.00 12.00 ......

......

Я бы хотел отсортировать строки (1), строки (2) .... строки (n) отдельно. Должен ли я написать цикл или любая формула работает здесь? Ищите решение, спасибо!

Ответы [ 3 ]

4 голосов
/ 16 февраля 2012

Если у вас есть данные в матрице Matlab, тогда функция сортировки сделает свое дело:

A = [1,3,2
     4,1,3]

Для функции сортировки необходимо указать размерность, поскольку по умолчанию она сортирует столбцы. Индексирование массива в matlab начинается с 1, поэтому требуемое число равно 2.

sort(A,2) = [1,2,3
             1,3,4]

Подробнее: http://www.mathworks.co.uk/help/techdoc/ref/sort.html

0 голосов
/ 16 февраля 2012

Поведение по умолчанию для sort (X), где X - это матрица, заключается в сортировке каждого столбца по отдельности. Если вы хотите отсортировать строки, вы можете использовать sort (x, 2) или sort (x ').

0 голосов
/ 16 февраля 2012

В функции MATLAB sort вы можете указать размер, по которому производится сортировка.Если вы занимаетесь по строкам , используйте измерение 2 (столбцы с измерением 1).

sort( data , 2 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...