How to split a row vector into sub vectors with different sizes?

Let h = [1 2 3 4 5 6 7 8 9 10 11]
n1= 3, n2= 3 , n3 = 2, n4= 2
how can I create sub vectors(m1,m2,m3,m4) based on the length of n1, n2 , n3 , n4 starting from the second elemnt of h. The resulting sub vectrs should be like this:
m1= 2 3 4
m2 = 5 6 7
m3= 8 9
m4= 10 11
Note that n1, n2 , n3 , n4 can be of different sizes.

1 个评论

Don't even try to create individually named variables. The answer below puts them into 4 cells of a cell array which is much better.

请先登录,再进行评论。

 采纳的回答

h = [1 2 3 4 5 6 7 8 9 10 11];
n = [3, 3, 2, 2];
m = mat2cell(h(2:end),1,n)

更多回答(0 个)

类别

标签

Community Treasure Hunt

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

Start Hunting!

Translated by