How to call dynamic variables in loop

11 views (last 30 days)
Shubham Pathare
Shubham Pathare on 14 Feb 2022
Edited: Stephen23 on 14 Feb 2022
I have a txt file and from that i am creating several column vectors and I want to extract range few values out of these column vectors so I am using a for loop and if condition to check the each element in that coumn. After that I am selecting range of rows and creating a new column vector out of it. Now I want to perform some operations on this newly created column vector but the promblem i am facing is how to call the names of these colomun vectors as it contains varibale. below you can find the script i used to create new column vectors
for a=1:count_rows
if Command(a,1)=="-1" && Command(a+1,1)=="0"
c=a;
end
if Command(a,1)=="0" && Command(a+1,1)=="-1"
d=a;
relaxs=['relaxs',num2str(count1)];
relaxv=['relaxv',num2str(count1)];
relaxtime=['relaxtime',num2str(count1)];
relaxcommand=['relaxcommand',num2str(count1)];
assignin('caller',relaxs,S(c:d,1));
assignin('caller',relaxv,V(c:d,1));
assignin('caller',relaxtime,Time(c:d,1));
assignin('caller',relaxcommand,Command(c:d,1));
count1=1+count1;
end
  4 Comments
Stephen23
Stephen23 on 14 Feb 2022
Edited: Stephen23 on 14 Feb 2022
"Actually I have just started using matlab and dont know many features of it."
Use indexing. Indexing is much simpler and more efficient than what you are attempting.
These tutorials are a good place to learn many basic, important, powerful features of MATLAB (e.g. indexing):
Forcing numbers into variable names like that is a sign that you are doing something wrong:

Sign in to comment.

Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!