добавление числа в строку ячеек - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь добавить число в строку ячейки ('фракт'), код приведен ниже. Несмотря на то, что после выполнения кода все ячейки во фракт_lbl по-прежнему просто «разорваны».

fract_lbl = repmat({'fract'}, int_fract, 1);
num_vec = [1:int_fract]';
fract_lbl = strcat(fract_lbl, num2cell(num_vec));

Как добавить число в строку ячейки?

Ответы [ 2 ]

2 голосов
/ 05 мая 2020

Вы должны использовать такую ​​функцию, как compose , и использовать спецификаторы формата:

fract_new = compose('%s%d',fract_lbl{1}, num_vec)

при условии, что префикс fract останется прежним.

1 голос
/ 05 мая 2020

С ≥ R2016b вы можете пропустить repmat и объединить строки напрямую с plus следующим образом:

Str = 'fract' + string(numvec);

Неявное расширение происходит в над линией.

Вышеупомянутая строка дает массив строк. В вашем вопросе у вас действительно есть массив ячеек, содержащий символы в каждой ячейке, а не строки. Если вам нужен массив ячеек символов, вы можете дополнительно использовать cellstr следующим образом:

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