How can prelocate arrays?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have an array like A which I want to have all of its elements zero by using Matlab features like zeros(x) function.
for example:
A=[1*3][1*3][1*3][1*3]
Each 1*3 matrix in the array A should have 3 zero.
I know how to make matrices with zero elements e.g zeros(2,3) but I don't know how to use it for array shown above with Matlab features without using simple loops.
3 Commenti
Risposta accettata
James Tursa
il 23 Apr 2013
This method uses a shared data copy of [0 0 0] to populate the individual cell elements, so it is memory efficient:
A = cell(1, n); % Or whatever size you need
A(:) = {[0 0 0]};
However, pre-allocating cell elements only makes sense in certain cases. E.g., it does not make sense if you are simply going to overwrite the elements with something else downstream in your code. How is the array A going to be used downstream in your code?
3 Commenti
Vedere anche
Categorie
Scopri di più su Operators and Elementary Operations in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!