How to assign a number to an array of double?

1 回表示 (過去 30 日間)
JFz
JFz 2018 年 7 月 18 日
コメント済み: JFz 2018 年 7 月 18 日
Hi, I have an array of doubles a. It has integers from 0 to 6. I want to keep the 0s and 2s, but change all other numbers to be 1. So I use a(~isequal(a,2) && ~isequal(a,0)) = 1; No error messages but the content a is still the same. Why? Thanks!

採用された回答

James Tursa
James Tursa 2018 年 7 月 18 日
The isequal() function returns either a logical 0 or 1 depending on if the two arguments are equal. It does not return an element-by-element comparison. To do the element-by-element operation, use the == operator instead. Also use the element-by-element operator & instead of the logical operator &&. E.g.,
a(~(a==2) & ~(a==0)) = 1;
  1 件のコメント
JFz
JFz 2018 年 7 月 18 日
Thanks!

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMultidimensional Arrays についてさらに検索

タグ

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by