How to quickly save a matrix by adding rows?

1 view (last 30 days)
Dear All,
I calculate a row Ai and save it in my defined matrix A using the following way:
A = [A; Ai];
But I foud it took a lot of time. Is there a faster way?
Thanks a lot.

Accepted Answer

dpb on 22 Jun 2021
Yes. Preallocate the array and index into it...without context it's conjecture what you have/are doing, but the general idea is
A=zeros(max(variable_i),size(A,2)); % preallocate A as array of zeros
for i=1:max(variable_i) % for the loop size each i
% whatever to compute Ai
A(i,:) = Ai; % store the new row in A
The above will not show degradation in speed as i increases.

More Answers (0)


Find more on Matrices and Arrays in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by