assign subscrips to vectors
3 次查看(过去 30 天)
显示 更早的评论
I have 5 vectors yt1, yt2, yt3,yt4,yt5 of size 200*1.
I need to assign subscripts so that I can call the vector I want in side a loop.
Can you please help me with this?
Thanks
0 个评论
采纳的回答
Cedric
2013-3-12
编辑:Cedric
2013-3-12
You probably want something like
yt = [yt1, yt2, yt3, yt4, yt5] ;
and then use
yt(:,k)
in the loop, where k is the loop index. If yt's were not all the same dimension, you could use a cell array:
yt = {y1, y2, y3, y4, y5} ;
and then use
yt{k}
in the loop.
If you want to avoid copies/aggregation, just define directly the matrix the cell array instead of defining yt1 to yt5, e.g.
yt = zeros(200,5) ; % Prealloc.
yt(:,1) = ... whatever computation you used to define yt1
yt(:,2) = ... whatever computation you used to define yt2
..
or
yt{1} = ... whatever computation you used to define yt1
yt{2} = ... whatever computation you used to define yt2
2 个评论
更多回答(2 个)
Youssef Khmou
2013-3-12
hi, try :
N=200;
for n=1:N
yt1(n)=.............
yt2(n)=.......
.....
end
4 个评论
Youssef Khmou
2013-3-12
alright, i dont think that is possible but you can construct a matrix that contains the vectors :
yt1=rand(200,1);
yt2=rand(200,1);
yt3=rand(200,1);
yt4=rand(200,1);
yt5=rand(200,1);
Y=[yt1';yt2';yt3';yt4';yt5'];
for m=1:5
ym=Y(m,:);
end
ok?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!