Beginner: How do I loop through strings ?

22 vues (au cours des 30 derniers jours)
Giulio Gottardo
Giulio Gottardo le 17 Oct 2022
Commenté : Giulio Gottardo le 20 Oct 2022
I have the following code:
br1=cell2mat(br1);
br2=cell2mat(br2);
...
br49=cell2mat(br49);
br50=cell2mat(br50);
How can I loop from br1 to br50? I tried using for n=1:50 eval('br' + n '=cell2mat(br' + n + ');'); but it doesn't work ("error using "+", incompatible array size").

Réponse acceptée

Jan
Jan le 17 Oct 2022
This is the question asked most frequently by beginners. The answer of the experts is always the same: Don't do this.
This is exhaustively explained here: TUTORIAL: Why and how to avoid Eval
Do not hide an index in the name of a variable, but use an array and an index:
brC = cell(1, 50);
for k = 1:50
brC{k} = cell2mat(br(k));
end
This is some pseudo-code only, because it is not clear, what the contents of your variables is.
  1 commentaire
Giulio Gottardo
Giulio Gottardo le 20 Oct 2022
Thank you! This is most helpful

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

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by