Concatenate arrays within a loop,

19 Ansichten (letzte 30 Tage)
VBBV
VBBV am 30 Jun. 2018
Bearbeitet: Stephen23 am 30 Jun. 2018
I would like to concatenate arrays inside a loop.. how can I do it ?

Akzeptierte Antwort

Stephen23
Stephen23 am 30 Jun. 2018
Bearbeitet: Stephen23 am 30 Jun. 2018
Easy, given any number of arrays in a cell array C. You could use a loop like this, although it is inefficient because the output array is not preallocated:
C = {[1,2],[3,4],...} % cell array of arrays.
A = C{1};
for k = 2:numel(C)
A = [A;C{k}];
end
Simpler and more efficient would be to concatenate them all at once, without a loop, e.g.:
A = vertcat(C{:})
Whatever you do, do NOT try to access variable names dynamically in a loop! Read this to know why:
Using an array (e.g. a cell array) and indexing is much simpler, neater, much more efficient, less buggy, and easier to debug.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by