Creating variables (matrices) in for loop

8 views (last 30 days)
TS
TS on 9 Oct 2016
Commented: TS on 10 Oct 2016
Hello, I'd like to create new variables in a for loop that are matrices. It wolud be something along the lines of:
for i=1:n
ki=
[a(i) b(i) a(i)*b(i) -a(i)*b(i);.......;etc.]
So it would create variables k1,k2...kn with the first row if k1 being a(1) b(1) etc. Any way to do this? This would really help simplify my code.

Accepted Answer

Marc Jakobi
Marc Jakobi on 10 Oct 2016
Edited: Marc Jakobi on 10 Oct 2016
Creating new variables dynamically is bad practice. Store them in a cell array or in a struct. For example:
C = cell(n,1);
for i = 1:n
A{i} = [a(i) b(i) a(i)*b(i) -a(i)*b(i);.......;etc.];
end
This article was written for Python, but it also applies to Matlab. Here's another article on the topic.
  1 Comment
TS
TS on 10 Oct 2016
Thanks, didn't know you could make cell arrays like that. Much better than what I wanted to do!

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!