Compare two cell in Matlab.

436 visualizzazioni (ultimi 30 giorni)
C Zeng
C Zeng il 14 Apr 2015
Commentato: Star Strider il 15 Apr 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.

Risposta accettata

Star Strider
Star Strider il 14 Apr 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 Commenti
C Zeng
C Zeng il 15 Apr 2015
Thanks Star!
Star Strider
Star Strider il 15 Apr 2015
My pleasure!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by