Могу ли я обрезать ведущие нули в векторах [0 0 0 2 8 12], [0 1 0 0 0 0], [0 0 0 0 25 0], чтобы получить [2 8 12], [1 8 0 3 0], [25 0] с той же функцией? Есть ли способ сделать это, не используя петлю while
? (Или любой другой вид петли?)Удалить ведущие нули из вектора в Matlab
Я намерен превратить вектор в строку, такую как «2h 8m 12s», «1mo 8d 0h 3m 0s», «25m 0s», если это откроет любые двери ,
'v = [0 0 0 2 8 12]; result = v (find (v, 1): end) '? Или, если вы чувствуете себя странно, 'result = v (logical (cumsum ((logical (v)))));' –
Почему бы не написать алгоритм преобразования строк таким образом, чтобы обрезка не нужна? Кажется, что это может быть более простой алгоритм для записи, чем для форматирования выходов в зависимости от длины входного вектора. – excaza
Как создать объект 'datetime', а затем преобразовать его в строку с помощью' datestr() '? – Jommy