MatLab, как организовать строки в порядке возрастания, но игнорировать нулевые значения? - PullRequest
1 голос
/ 24 октября 2011

Если у меня есть такая матрица:

A=[ 8 3 67 8 2 0 0 0 0 0; 8 76 9 233 1 89 34 0 0 0; 98 23 87 9 3 24 64 45 1 0]

, и я использую команду sort (A, 2), она будет сортироваться вдоль столбцов, но в то же время выдвигать нули вперед.Я хотел бы сохранить 0 до конца для вычислительных целей позже в коде.

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

1 Ответ

6 голосов
/ 24 октября 2011

Вы можете заменить 0 на Inf, затем отсортировать и после сортировки заменить Inf на 0 еще раз.

...