How to split data into multiple "chunks"?
显示 更早的评论
Is there an algorithm to split a dataset of a few thousand points into multiple "chunks" of length 'n'?
回答(2 个)
Read about reshape.
A = rand(1,1000) ;
n = 100 ;
iwant = reshape(A,100,[]) ;
size(iwant)
iwant(:,1) % 10 columns of 100 rows
1 个评论
Xuan Gip
2023-6-27
is there any way to reshape based on a pattern? For example, I have a data that goes 1 1 1 1 2 2 2 2 2 2 1 1 1 1 1 and I want the reshape the entire data set to start from that first "1" to the last "1" on the second group of 1s.
Ameer Hamza
2020-10-15
Another approach is to create a cell array.
M = rand(1, 1000);
n = 100;
C = mat2cell(M, 1, n*ones(numel(M)/n, 1))
3 个评论
j bar
2020-10-15
Ameer Hamza
2020-10-16
Your number of elements in vector M must be a multiple of 'n'. If it is something else, you will get that error.
KSSV
2020-10-16
- Try to make M divisble by n, by appending NaN's to your array.
- Or make first few chunks of same size and leave last chunk with reduced elements
类别
在 帮助中心 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!