Effacer les filtres
Effacer les filtres

How to use exist for a cell?

49 vues (au cours des 30 derniers jours)
osminbas
osminbas le 12 Avr 2012
Hello,
I have a cell with string elements and I am trying to check if they exist as variables:
A={'B0','B01','B04'}
for i=1:3
if exist(A(i,1),'var')==1
...
This does not work so what do I do? Thx!

Réponse acceptée

Walter Roberson
Walter Roberson le 12 Avr 2012
if exist(A{i,1},'var')
Notice the {} instead of ()
  3 commentaires
Shamir Alavi
Shamir Alavi le 7 Déc 2012
It doesn't work for me! Here's the code:
>> h = {1,2;3,4};
>> exist('h','var')
ans =
1
>> exist('h{1}','var')
ans =
0
>> exist('h{1,1}','var')
ans =
0
Am I making any mistake? If not, is there any other way to check existence of different elements in a cell array?
Thanks
Matt J
Matt J le 7 Déc 2012
Modifié(e) : Matt J le 7 Déc 2012
You have several errors. First, notice that Walter doesn't enclose the first argument to exist() in quotes. Secondly, your h{i,j} data are not relevant examples because they are not strings.

Connectez-vous pour commenter.

Plus de réponses (1)

RNTL
RNTL le 12 Avr 2012
ismember(A,who)
  2 commentaires
osminbas
osminbas le 12 Avr 2012
Actually, I am really trying to use exist and check the elements one by one in a loop so ismember(A,who) would not work for me.
Jan
Jan le 7 Déc 2012
@osminbas: Please take the time to think twice. This method would help to avoid the loop or at least compare all elements of the cell string h in a very compact form.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Entering Commands 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