How can i size my array to the output of a nested for loop? Thanks for the help!
DataArray = nan(300,1); % this is the array that i need to make sure is big enough to take in the data....
inputValsY3 = -20:20;
for y = 1:300
for y1 = 1:50
for y2 = 50:100
for y3 = 1:numel(inputValsY3)
[~,~,DataArray(y,y1,y2,y3)] = Function(Close,y,y1,y1,y2,y3);
end
end
end
end

 Réponse acceptée

James Tursa
James Tursa le 1 Déc 2021
Modifié(e) : James Tursa le 1 Déc 2021

0 votes

To keep the indexing the same, just use the top value from the loops. E.g.,
DataArray = nan(300,50,100,numel(inputValsY3));
Note that since your for-loop fills in the 3rd index starting at 50, there will be some NaN values left in the array after the loops are done. If you don't want that then you would have to shift the 3rd index down.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Produits

Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by