MATLAB Answers


Creating a cell and allocation specific text

Asked by Tiago Dias on 9 Apr 2019
Latest activity Commented on by Tiago Dias on 9 Apr 2019
My objective is to create an array cell like:
result = {'Intercept','X1','X2','X3',....'X41'}, in the 1st colum I got the word Intercept, and 2nd X1, 3rd X2, so on until reach X41 in the 42th colum
result = cell(1,42);
result{1,1} = 'Intercept';
result_aux = sprintfc('X%d', 1:41);
result{1,2:end} = result_aux; % Here i get the error
From the last code line i get this error message:
Expected one output from a curly brace or dot indexing expression, but there were 41 results.
What am I doing wrong?


Sign in to comment.


3 Answers

Answer by Alex Mcaulley on 9 Apr 2019
 Accepted Answer

result = cell(1,length(beta));
result{1} = {'Intercept'};
result(2:end) = sprintfc('X%d', 1:41);

  1 Comment

Sign in to comment.

Answer by KSSV
on 9 Apr 2019

result = cell(1,length(beta));
result{1,1} = {'Intercept'};
result_aux = sprintfc('X%d', 1:41);
legend{1,2:end} = legend_aux; % Here i get the error

  1 Comment

KSSV isn’t this the exact copy from the question?

Sign in to comment.

Answer by Tiago Dias on 9 Apr 2019

Instead of { } i used now ( ) and it works.
result(1,2:end) = result_aux(1,1:end);


That’s exactly how Alex showed in his answer.
Yes, when i discovered by myself, i posted here the solution for someone that might need. and i accepted alex response

Sign in to comment.