How to vary the interval of this matrix?

2 views (last 30 days)
Pedro Guevara
Pedro Guevara on 26 Jul 2018
Edited: per isakson on 28 Jul 2018
Thank you all for the reply. I already solved, in part, the problem I had, but now I have another. I have this line of code:
prueba=['MK_G', num2str(px(j,1)),'(4:6,4:6)'];
where 'MK_G', num2str (px (j, 1)) are N number of matrices that are already created. but I require, in some way, that the intervals of the matrix that I am evaluating (in this case 4: 6,4: 6) are in some way variable. I thank you for your collaboration with this new problem.
  6 Comments
jonas
jonas on 26 Jul 2018
Ugh.. Looks like he didn't pick up on the advice regarding dynamic variables.

Sign in to comment.

Answers (1)

jonas
jonas on 26 Jul 2018
Edited: jonas on 26 Jul 2018
i is your variable, then
formatSpec = '(%d:%d,%d:%d)';
str = sprintf(formatSpec,i,i+2,i,i+2)
prueba=['MK_G', num2str(px(j,1)),str];
You want the length of the interval to be variable as well? Just change the 2 to a variable.
  2 Comments
Pedro Guevara
Pedro Guevara on 26 Jul 2018
I will try this code. thank you very much.
jonas
jonas on 26 Jul 2018
Edited: jonas on 26 Jul 2018
No problem! I changed to sprintf for building the string instead, a bit more elegant.
EDIT: Ugh... Don't name variables dynamically. It's not good practice. Better use cell arrays or dynamic field variables.

Sign in to comment.

Products


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!