Matlab: преобразование вектора в массив ячеек строк

Я уверен, что есть способ сделать это, но я не знаю, что это такое.

Предположим, у меня есть вектор

v = [1.02 2.03 3.04];

, и я хочу преобразовать его в массив ячеек, используя строку формата для каждого элемента:

'   %.3f'

(3 пробела перед %.3f)

Как мне это сделать? Я пробовал следующий подход, но получаю сообщение об ошибке:

>> f1 = @(x) sprintf('   %.3f',x);
>> cellfun(f1, num2cell(v))
??? Error using ==> cellfun
Non-scalar in Uniform output, at index 1, output 1.
Set 'UniformOutput' to false.
5
задан Jason S 30 May 2012 в 14:08
поделиться