How to loop over a series of files
3 次查看(过去 30 天)
显示 更早的评论
I have 10 datasets named data1, data2,data3,...,data10 with dimensions [150,120, 25, 5]. I want to create a big matrix and put all this data in.
The new matrix should have dimensions [150,120,25, 5, 10]. I tried to make a for loop but I got it wrong. Below is my code
Big_matrix = zeros(150,120,25,10);
for i=1:10
Big_matrix(:,:,:,:,i)=data(i);
end
Can anyone please help with that?
5 个评论
Rik
2019-3-15
Have you read the documentation for the cat function? The first input is the dimension in which your arrays (the later inputs) should be concatenated. So to concatenate in the 5th dimension, use cat(5,D{:}) instead.
回答(1 个)
Rik
2019-3-14
You should avoid eval. Make sure to never need it by having a better data structure.
Big_matrix=eval(['cat(4' sprintf(',data%d',1:5) ')']);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!