主要内容

与关系操作符的数组比较

关系运算符使用“小于”、“大于”和“不等于”等运算符对操作数进行定量比较。关系比较的结果是一个逻辑数组,指示关系为真的位置。

这些是MATLAB中的关系运算符®

象征 函数等价 描述
< lt

不到

< =

小于或等于

> gt

大于

> = 通用电气

大于或等于

== 情商

等于

~ =

不等于

数组的比较

数字数组

关系操作符执行两个数组之间的元素比较。为了便于操作,数组必须具有兼容的大小。具有兼容大小的数组在执行计算时将隐式扩展为相同的大小。在最简单的情况下,两个操作数是相同大小的数组,或者一个是标量。有关更多信息,请参见基本操作的兼容数组大小

例如,如果比较两个大小相同的矩阵,则结果是一个大小相同的逻辑矩阵,其中的元素表示关系为真。

A = [2 4 6;8 10 12]
A = 2 4 6 8 10 12
B = [5 5 5 5;9 9 9]
B = 5 5 5 9 9 9
A < b
Ans = 1 1 0 1 0 0

类似地,可以将其中一个数组与标量进行比较。

A > 7
Ans = 0 0 0 1 1 1

如果你比较1——- - - - - -N行的向量——- - - - - -1列向量,然后MATLAB将每个向量展开为——- - - - - -N矩阵,然后执行比较。得到的矩阵包含向量中每个元素组合的比较结果。

A = 1:3
A = 1 2 3
B = [2;3]
B = 2
A >= b
Ans = 0 1 1 0 0 1

空数组

关系操作符处理任意维度大小为0的数组,只要两个数组具有兼容的大小。这意味着如果一个数组的维度大小为0,那么另一个数组中相应维度的大小必须为1或0,并且该维度在输出中的大小为0。

A = ones(3,0);B = ones(3,1);A == b
ans =空矩阵:3 × 0

然而,像

A == []

返回一个错误,如果一个不是0乘0或1乘1。这种行为与所有其他二进制操作符一致,例如+-><|等等。

若要测试空数组,请使用isempty ()

复数

  • 运营商><> =,< =在执行比较时,只使用操作数的实部。

  • 运营商==而且~ =测试操作数的实部和虚部。

NaT,和未定义的元素比较

  • 价值观是平等的值。

  • 值不等于任何其他数值,包括other值。

  • NaT值不等于任何其他日期时间值,包括otherNaT值。

  • 未定义范畴元素不等于任何其他范畴值,包括其他未定义元素。

逻辑语句

将关系操作符与逻辑操作符结合使用A & b(和)A | b(或),xor (A, B)(XOR),~一个(NOT),将更复杂的逻辑语句串在一起。

例如,您可以定位两个数组中出现负元素的位置。

A = [2 -1;3 10]
A = 2 -1 -3
B = [0 -2;3 (1)
B = 0 -2 -3 -1
A<0 & b <0
Ans = 0 1 10 0

有关更多示例,请参见找到满足条件的数组元素

另请参阅

|||||

相关的话题