Fill the array after each loop iteration
83 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
my Problem is that I want the array to be filled each time the loop iterate, for example here, cosTheta is my array, I want after each iteration to add the new value to it as an element. This is what I wrote:
for k=1:10
r(k) = (dot(a,b)/(norm(a)*norm(b)));
end
cosTheta = [r(1) r(2) r(3) r(4) r(5) r(6) r(7) r(8) r(9) r(10)];
But I think this is not a good idea if I want a larger number of iteration.. for example if k will go from 1 to 50, this not an ideal way to do that, can you help me plz
0 commentaires
Réponse acceptée
Stefan Raab
le 24 Avr 2016
Hello,
why use the r at all? Try
n_iter = 10;
cosTheta = zeros(1,n_iter); % Memory preallocation
for k=1:n_iter
a = trainZ(k,:);
b = testZ;
cosTheta(k) = (dot(a,b)/(norm(a)*norm(b)));
end
Kind regards, Stefan
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements 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!