extract vector from large vector

1 view (last 30 days)
Chaudhary P Patel
Chaudhary P Patel on 6 Apr 2022
Commented: DGM on 6 Apr 2022
i have vector [0 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ]
from this i have to extract 5 vectors which are;
[0 0 0 1 2 3]
[1 2 3 4 5 6]
[4 5 6 7 8 9]
[7 8 9 10 11 12]
[10 11 12 13 14 15]
how can write code for this.

Answers (1)

DGM
DGM on 6 Apr 2022
Instead of generating a bunch of loose vectors, it's often better to just use a matrix:
A = [0 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15];
B = repelem(reshape(A,3,[]),1,2);
B = reshape(B(:,2:end-1),6,[]).'
B = 5×6
0 0 0 1 2 3 1 2 3 4 5 6 4 5 6 7 8 9 7 8 9 10 11 12 10 11 12 13 14 15
  2 Comments
DGM
DGM on 6 Apr 2022
Well then I guess you can make a bunch of vectors then.
A = [0 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15];
myfirst6x1vector = A(1:6)
mysecond6x1vector = A(4:9)
mythird6x1vector = A(7:12)
myfourth6x1vector = A(10:15)
myfifth6x1vector = A(13:18)
...

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by