What is difference between isequal and == in comparing two vectors

37 ビュー (過去 30 日間)
Hansori Chang
Hansori Chang 2019 年 9 月 13 日
コメント済み: Stephen23 2019 年 9 月 15 日
Two vectors that have the same values and same length.
However, I want to know what are the difference between == and isequal(A,B), comparing two vectors

回答 (1 件)

the cyclist
the cyclist 2019 年 9 月 13 日
編集済み: the cyclist 2019 年 9 月 13 日
isequal will return a single logical value, indicating whether or not the two vectors are identical.
== will give a vector with element-by-element comparison.
>> x = [1 2 3 4];
>> y = [1 2 3 5];
>> x == y
ans =
1×4 logical array
1 1 1 0
>> isequal(x,y)
ans =
logical
0
Also, isequal will work on unequal-sized vectors, and == will give an error (because the mismatch in number of elements prevents the element-by-element comparison).
  11 件のコメント
the cyclist
the cyclist 2019 年 9 月 14 日
編集済み: the cyclist 2019 年 9 月 14 日
(I was replying to Stephen, not you Bruno.)
I agree that the non-transivitity is pretty surprising, and could be documented more clearly. Your latest set of comparisons are really a surprise to me, especially that
isequal( {'frog'} , "frog" )
is true.
Stephen23
Stephen23 2019 年 9 月 15 日

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by