Effacer les filtres
Effacer les filtres

MATLAB cannot call or index into a temporary array in for loop

1 vue (au cours des 30 derniers jours)
hello_world
hello_world le 17 Mai 2016
Commenté : Walter Roberson le 17 Juil 2018
Hello Friends,
Here is my code:
M = {'a', 'b', 'c'};
for i = length(M)
M(i) = M(i)(M(i)~=0);
end
In other words, I am trying to get for each vector 'a', 'b', and 'c' the following in for loop:
a = a(a~=0);
b = b(b~=0);
c = c(c~=0);
I get the following error: "cannot call or index into a temporary array"
I will appreciate any advice.
  1 commentaire
Walter Roberson
Walter Roberson le 17 Juil 2018
Please do not close a Question that has an Answer.

Connectez-vous pour commenter.

Réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 17 Mai 2016
I don't know what you want, your example is not appropriate, comparing letters with 0!
A=[1 2 0 5 0 7]
B=A(A~=0)
  1 commentaire
hello_world
hello_world le 17 Mai 2016
Modifié(e) : hello_world le 17 Mai 2016
I have a cell array, and I want to remove 0 entries from M. I want to do it for each 'a', 'b' and 'c' in for loop. In other words, it will be
a = a(a~=0);
b = b(b~=0);
c = c(c~=0);

Connectez-vous pour commenter.


Walter Roberson
Walter Roberson le 18 Mai 2016

Catégories

En savoir plus sur Matrix Indexing 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!

Translated by