How to call dynamic variables in loop

1 次查看(过去 30 天)
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 个评论
Stephen23
Stephen23 2022-2-14
编辑:Stephen23 2022-2-14
"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:

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by