How to quickly save a matrix by adding rows?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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.
Benson
Réponse acceptée
dpb
le 22 Juin 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
end
The above will not show degradation in speed as i increases.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!