Error: Unable to perform assignment because the left and right sides have a different number of elements.

1 vue (au cours des 30 derniers jours)
I am unable to get this for loop working for some reason, I know it is in line 28 but not sure. Thanks for any help.

Réponse acceptée

fred  ssemwogerere
fred ssemwogerere le 13 Fév 2020
Modifié(e) : fred ssemwogerere le 13 Fév 2020
You are using a double for loop. I advise its best to use something like this
for ii=1:24
for jj=1:24
z(ii,jj)=normrnd(mu_SC(ii),std_SC(jj),1000);
end
end
  3 commentaires
fred  ssemwogerere
fred ssemwogerere le 13 Fév 2020
Hello, from your question i think you are tring to generate a 1000x1000 array of normal random numbers, then in that case you can use cell notation, with curly brackets to the output as below:
for ii=1:24
for jj=1:24
z{ii,jj}=normrnd(mu_SC(ii),std_SC(jj),1000);
end
end
Stephen23
Stephen23 le 13 Fév 2020
With preallocation to avoid inefficiency and some errors related to unmatching classes/types/sizes:
z = cell(24,24);
for ...
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by