how do I change a variable name in each iteration?

119 views (last 30 days)
I want to create a loop where the variable name changes with each iteration. Specifically, I want to do the following:
r_1 = .4
r_2 = .3
r_3 = .8
r_4 = .2
r_5 = .2
numArrays = 5;
a = cell(numArrays,1);
for n = 1:numArrays
A{n} = .5.*log((1+r_{n})./(1-r_{n}));
end
So in the last line the 'r_{n}' should be the variable 'r_1' for the first iteration, 'r_2' for the second, and so on.
I'm really stuck and I know this is a simple question, but any advice would be much appreciated!
  3 Comments
Walter Roberson
Walter Roberson on 15 Apr 2021
@Mikkel Hansen comments to Stephne Cobeldick:
Not the same question nor same responses.

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 25 Feb 2016
Edited: Walter Roberson on 25 Feb 2016
Do not do that.
r_ = {r_1, r_2, r_3, r_4, r_5};
Now your cell array indexing will work.

Community Treasure Hunt

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

Start Hunting!