How to seperate an array into two?
Show older comments
Im trying to seperate an array into two even variables using for loops. How can i do that?
I know that i can just do V1=V(1:2:end); V2=V(2:2:end); but I want to do it using for loops.
V=(8x1)
[r,c]=size(V)
V1=V(1);
V2=V(2)
for i=1:r-1
for j=1:(r/2)
V1(j)=V(i+2)
V2(j)=V(i+1)
end
2 Comments
dpb
on 2 Apr 2020
No loops needed...
V1=V(1:2:end);
V2=V(2:2:end);
I'd also strongly suspect there's really no reason to create two variables with sequential names; just reference the desired subset directly from the original.
Jose Grimaldo
on 2 Apr 2020
Accepted Answer
More Answers (1)
Mohammad Sami
on 2 Apr 2020
You can directly index into your 1-D vector.
V = rand(8,1);
n = length(V);
Vodd = V(1:2:n);
Veven = V(2:2:n);
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!