assign subscrips to vectors

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

 Akzeptierte Antwort

Cedric
Cedric am 12 Mär. 2013
Bearbeitet: Cedric am 12 Mär. 2013

1 Stimme

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 Kommentare

dav
dav am 12 Mär. 2013
thank you everyone!
Cedric
Cedric am 12 Mär. 2013
Bearbeitet: Cedric am 12 Mär. 2013
You're welcome, please check the last EDITs that I made (worded a little better, eliminated typos).

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Youssef  Khmou
Youssef Khmou am 12 Mär. 2013

1 Stimme

hi, try :
N=200;
for n=1:N
yt1(n)=.............
yt2(n)=.......
.....
end

4 Kommentare

dav
dav am 12 Mär. 2013
thanks, but I need to call the WHOLE vector inside the loop first.
yes, say that i want to add the vector yt1 10 times
yt1=randn(100,1);
N=10;
S=zeros(size(yt1));
for n=1:N
S=S+yt1;
end
dav
dav am 12 Mär. 2013
I mean something like the following:
For m=1:5
ym=ytm;
end
where ytm is a full vector for m=1,2..5
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?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Tags

Noch keine Tags eingegeben.

Gefragt:

dav
am 12 Mär. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by