Compare two cell in Matlab.

367 vues (au cours des 30 derniers jours)
C Zeng
C Zeng le 14 Avr 2015
Commenté : Star Strider le 15 Avr 2015
Hello, I have a question that,
if A=[ 'ddd', 'aaa']; B=['ddd']; I want to return an array that compare whether A's cell is equivalent to B's content. (sorry I know it is not well written)
So it should be [1,0] where first cell is equivalent but second is not.
However, my code has a problem:
for j=1:Num
temp(j)=(A{j}==B{1});
end
that it returns a comparison of vector, for example temp(1)=[1 1 1]; How can I do a comparison and just return 1 or 0, not an array.
How can I do it vectorization?
Thanks.

Réponse acceptée

Star Strider
Star Strider le 14 Avr 2015
To cast your array as cells, use curly brackets ‘{}’ rather than square brackets ‘[]’.
With that change:
A={'ddd', 'aaa'};
B={'ddd'};
temp = strcmpi(A,B)
produces:
temp =
1 0
as desired.
  8 commentaires
C Zeng
C Zeng le 15 Avr 2015
Thanks Star!
Star Strider
Star Strider le 15 Avr 2015
My pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

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