help in multi dimensional array 3D

5 visualizzazioni (ultimi 30 giorni)
Kawther Alani
Kawther Alani il 17 Gen 2017
Commentato: Kawther Alani il 18 Gen 2017
hi I'm trying to increase the third dimension in a three-dimensional matrix can you help me? Example a=(2,3,5) after iteration it must be a=(2,3,7) thanks

Risposta accettata

Greg
Greg il 17 Gen 2017
Modificato: Greg il 17 Gen 2017
I assume that "a=(2,3,5)" means the corresponding length of each dimension of a is 2, 3 and 5.
Increasing variable size is rarely a good idea (there are plenty of articles on pre-allocation; I won't rehash).
a = zeros(2,3,7);
for ind3 = 1:7
a(:,:,ind3) = randi(10,2,3);
end
(But ALL of this trivial example can be done with "a = randi(10,2,3,7);")
If you really MUST dynamically allocate:
  • a(:,:,end+1) = randi(10,2,3); ~OR~
  • a = cat(3,a,randi(10,2,3));

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by