I am have a 5139 x 30 matrix.
I want to split this into 39 subsets.
How can I do this in a for loop condition in MATLAB? Think like this. First subset having 132 rows all columns. The second subset having 132+132 rows all columns, the third subset having 133+132+132 rows all columns. This will go on until 5139 rows is reached. This is how I need this actually.
Thank you.

 채택된 답변

Walter Roberson
Walter Roberson 2018년 7월 8일

0 개 추천

What you asked for will not fit. There is only enough data for each block to have 131, with 9 left over that could be distributed
N = 39;
R = size(YourMatrix,1);
pos = floor(linspace(1,R,N+1));
pos(end) = R+1;
sizes = diff(pos);
subsets = mat2cell(YourMatrix, sizes, size(YourMatrix,2));

추가 답변 (0개)

카테고리

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

제품

릴리스

R2017b

태그

질문:

2018년 7월 8일

댓글:

2018년 7월 8일

Community Treasure Hunt

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

Start Hunting!

Translated by