Reshape error when converting 2D to 3D data
2 次查看(过去 30 天)
显示 更早的评论
I want to convert 2D data to 3D.
Currently I use :
ij=0;
for ix=1:200:size(data1,1)
ij=ij+1;
data(ij,:,:)=data1(ix:ix+199,:);
end
However it is very slow. I try the following code then:
permute(reshape(data1, 200, 8578, 200), [1 3 2]);
But, I get the following error:
Error using reshape
To RESHAPE the number of elements must not change.
Size of data1 is 1751600x200.
Thank you for help.
2 个评论
Sulaymon Eshkabilov
2020-11-16
what is the size of the variable called: data1?
It looks like you have a sizing problem while converting your 2D variable into 3D one.
回答(1 个)
Walter Roberson
2020-11-16
xxx78*2 is going to end in 56 not in 16. The size should be 8758 not 8578
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!