Main Content

ne, ~=

説明

入力 AB が等しくない場合、A ~= B は、要素が logical 1 (true) に設定された logical 配列または logical 値の table を返します。そうでない場合、要素は logical 0 (false) となります。テストでは、数値配列の実数部と虚数部の両方が比較されます。ne は、A または BNaN か未定義の categorical 要素をもつ場合には、logical 1 (true) を返します。

ne(A,B)A ~= B の代替方法として実行できますが、まれにしか使われません。これにより、クラスの演算子のオーバーロードが可能です。

すべて折りたたむ

実数と虚数の両方を含む 2 つのベクトルを作成し、その不等価性を評価します。

A = [1+i 3 2 4+i];
B = [1 3+i 2 4+i];
A ~= B
ans = 1x4 logical array

   1   1   0   0

関数 ne は、実数部と虚数部が等しくないかどうかをテストし、一方または両方の部分が等しくない場合に logical 1 (true) を返します。

文字ベクトルを作成します。

M = 'magenta';

~= を使用して、特定の文字があるかどうかをテストします。

M ~= 'q'
ans = 1x7 logical array

   1   1   1   1   1   1   1

logical 1 (true) は、文字 'n' が存在しないことを示します。ベクトル内にこの文字は存在しません。

'heads''tails' の 2 つの値をもつ categorical 配列を作成します。

A = categorical({'heads' 'heads' 'tails'; 'tails' 'heads' 'tails'})
A = 2x3 categorical
     heads      heads      tails 
     tails      heads      tails 

'heads' カテゴリに含まれないすべての値を検索します。

A ~= 'heads'
ans = 2x3 logical array

   0   0   1
   1   0   1

logical 1 (true) は、カテゴリに含まれない値を示します。A には 2 つのカテゴリしかないため、A ~= 'heads'A == 'tails' と同じ回答を返します。

A の行が等しくないかどうかを比較します。

A(1,:) ~= A(2,:)
ans = 1x3 logical array

   1   0   0

logical 1 (true) は、等しくないカテゴリ値をもつ行を示します。

小数のテキストで表された多くの数値は、2 進浮動小数点数として正確に表すことができません。これにより、~= 演算子が反映する結果に若干の違いが生じます。

小数で表されている数値に対していくつかの減算演算を実行し、結果を C に格納します。

C = 0.5-0.4-0.1
C = -2.7756e-17

厳密な 10 進演算では、C は "正確に" 0 に等しくなります。その小さい値は、2 進浮動小数点演算の特性によるものです。

C0 の不等価性を評価します。

C ~= 0
ans = logical
   1

浮動小数点数を比較するには、~= の代わりに許容誤差 tol を使用します。

tol = eps(0.5);
abs(C-0) > tol
ans = logical
   0

C0 の 2 つの数値は、0.5 に近い連続する 2 つの浮動小数点数よりも互いに近い数です。多くの状況で、C0 と同様に振る舞います。

2 つの datetime 配列の要素が等しくないかどうかを比較します。

タイム ゾーンが異なる 2 つの datetime 配列を作成します。

t1 = [2014,04,14,9,0,0;2014,04,14,10,0,0];
A = datetime(t1,'TimeZone','America/Los_Angeles');
A.Format = 'd-MMM-y HH:mm:ss Z'
A = 2x1 datetime
   14-Apr-2014 09:00:00 -0700
   14-Apr-2014 10:00:00 -0700

t2 = [2014,04,14,12,0,0;2014,04,14,12,30,0];
B = datetime(t2,'TimeZone','America/New_York');
B.Format = 'd-MMM-y HH:mm:ss Z'
B = 2x1 datetime
   14-Apr-2014 12:00:00 -0400
   14-Apr-2014 12:30:00 -0400

AB の要素が等しくないかどうかチェックします。

A~=B
ans = 2x1 logical array

   0
   1

R2023a 以降

2 つの table を作成して比較します。行名 (両方に存在している場合) および変数名は同じでなければなりませんが、同じ順序である必要はありません。出力の行および変数は、最初の入力と同じ順序になります。

A = table([1;2],[3;4],VariableNames=["V1","V2"],RowNames=["R1","R2"])
A=2×2 table
          V1    V2
          __    __

    R1    1     3 
    R2    2     4 

B = table([4;2],[3;1],VariableNames=["V2","V1"],RowNames=["R2","R1"])
B=2×2 table
          V2    V1
          __    __

    R2    4     3 
    R1    2     1 

A ~= B
ans=2×2 table
           V1       V2  
          _____    _____

    R1    false    true 
    R2    true     false

入力引数

すべて折りたたむ

オペランド。スカラー、ベクトル、行列、多次元配列、table、または timetable として指定します。入力 AB は、同じサイズであるか、互換性のあるサイズでなければなりません (たとえば、AMN 列の行列で、B がスカラーまたは 1N 列の行ベクトル)。詳細については、基本的な演算で互換性のある配列サイズを参照してください。

任意の型の数値入力を比較でき、比較は型変換による精度低下の悪影響を受けません。

  • 一方の入力が categorical 配列である場合、他方の入力には categorical 配列、文字ベクトルの cell 配列または単一の文字ベクトルを指定できます。単一の文字ベクトルは、他方の入力と同じサイズの文字ベクトルの cell 配列に拡張されます。両方の入力が順序 categorical 配列である場合は、順序を含めて同じカテゴリ セットでなければなりません。両方の入力が順序ではない categorical 配列である場合は、異なるカテゴリ セットを含めることができます。詳細については、categorical 配列の要素の比較を参照してください。

  • 一方の入力が datetime 配列である場合、他方の入力には datetime 配列、文字ベクトル、または文字ベクトルの cell 配列を指定できます。

  • 一方の入力が duration 配列である場合、他方の入力には duration 配列または数値配列を指定できます。この演算子は各数値を標準日 (24 時間) の数として扱います。

  • 一方の入力が string 配列の場合、他方の入力には string 配列、文字ベクトル、または文字ベクトルの cell 配列を指定できます。AB の対応する要素は、辞書順に比較されます。

table または timetable である入力は次の条件を満たさなければなりません。 (R2023a 以降)

  • 入力が table または timetable の場合、すべての変数のデータ型で演算がサポートされている必要があります。

  • 一方の入力だけが table または timetable の場合、もう一方の入力は数値または logical 配列でなければなりません。

  • 両方の入力が table または timetable の場合、以下のとおりです。

    • 両方の入力のサイズが同じであるか、一方が 1 行の table でなければなりません。

    • 両方の入力に同じ名前をもつ変数が含まれている必要があります。ただし、各入力の変数の順序は異なっていてもかまいません。

    • 両方の入力が table で、両方とも行名をもつ場合、行名は同じでなければなりません。ただし、各入力の行名の順序は異なっていてもかまいません。

    • 両方の入力が timetable の場合、行時間が同じでなければなりません。ただし、各入力の行時間の順序は異なっていてもかまいません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime | duration | table | timetable
複素数のサポート: あり

拡張機能

HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための VHDL、Verilog および SystemVerilog のコードを生成します。

バージョン履歴

R2006a より前に導入

すべて展開する