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.

댓글을 달려면 로그인하십시오.

 채택된 답변

Andrei Bobrov
Andrei Bobrov 2018년 11월 16일

1 개 추천

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

댓글 수: 4

Thanks Andrei, sorry Iam not so good in matlab, could please complete the code until getting sub vectors m1,m2,m3,m4 separately like this:
m1= 2 3 4
m2 = 5 6 7
m3= 8 9
m4= 10 11

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Structures에 대해 자세히 알아보기

태그

질문:

2018년 11월 16일

댓글:

2018년 11월 16일

Community Treasure Hunt

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

Start Hunting!

Translated by