ne, ~=
确定不相等性
说明
示例
创建两个均包含实数和虚数的向量,然后比较这两个向量的不相等性。
A = [1+i 3 2 4+i]; B = [1 3+i 2 4+i]; A ~= B
ans = 1×4 logical array
1 1 0 0
ne 函数会测试实部和虚部的不相等性,如果两个部分中有一个不相等或两个都不相等,将返回逻辑值 1 (true)。
创建字符向量。
M = 'magenta';使用 ~= 测试是否有特定字符。
M ~= 'q'ans = 1×7 logical array
1 1 1 1 1 1 1
逻辑值 1 (true) 表示没有字符 'n'。向量中不存在该字符。
创建一个分类数组,其中包含两个值 'heads' 和 'tails'。
A = categorical({'heads' 'heads' 'tails'; 'tails' 'heads' 'tails'})A = 2×3 categorical
heads heads tails
tails heads tails
查找不在 'heads' 类别中的所有值。
A ~= 'heads'ans = 2×3 logical array
0 0 1
1 0 1
逻辑值 1 (true) 表示值不在类别中。由于 A 只有两个类别,A ~= 'heads' 返回与 A == 'tails' 相同的结果。
比较 A 的行,确定其不相等性。
A(1,:) ~= A(2,:)
ans = 1×3 logical array
1 0 0
逻辑值 1 (true) 表示行有不相等的类别值。
以十进制文本表示的多个数字不能精确地表示为二进制浮点数。这会导致 ~= 的运算结果有少许偏差。
对用十进制表示的数字执行几次减法运算,将结果存储到 C 中。
C = 0.5-0.4-0.1
C = -2.7756e-17
使用精确的十进制算术运算,C 应刚好等于 0。然而由于二进制浮点数算法的缘故,在这里它是一个很小的值。
比较 C 与 0 是否不相等。
C ~= 0
ans = logical
1
使用容差 tol(而不是使用 ~=)比较浮点数。
tol = eps(0.5); abs(C-0) > tol
ans = logical
0
C 和 0 这两个数比 0.5 附近的两个连续浮点数更相互接近。许多情况下,C 的行为可能像 0。
比较两个 datetime 数组的元素的不相等性。
创建处于不同时区的两个 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 = 2×1 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 = 2×1 datetime
14-Apr-2014 12:00:00 -0400
14-Apr-2014 12:30:00 -0400
检查 A 和 B 中的元素不相等的位置。
A~=B
ans = 2×1 logical array
0
1
自 R2023a 开始提供
创建两个表并比较它们。行名称(如果两者中都存在)和变量名称必须相同,但顺序不必相同。输出的行和变量与第一个输入的顺序相同。
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
输入参数
操作数,指定为标量、向量、矩阵、多维数组、表或时间表。输入 A 和 B 必须具有相同的大小或具有兼容的大小(例如,A 是一个 M×N 矩阵,B 是标量或 1×N 行向量)。有关详细信息,请参阅基本运算的兼容数组大小。
您可以比较任何类型的数值输入,并且比较不会因类型转换而损失精度。
如果一个输入是有序
categorical数组,则另一个输入可以是有序categorical数组,或是表示categorical值的字符串标量或字符向量。如果两个输入均为有序categorical数组,则必须具有相同的类别集(包括其顺序)。有关详细信息,请参阅比较分类数组元素。如果一个输入是
datetime数组,则另一个输入可以是datetime数组,或是表示日期和时间的字符串标量或字符向量。有关详细信息,请参阅比较日期和时间。如果一个输入是
duration数组,则另一个输入可以是duration数组、表示时间长度的字符串标量或字符向量,或者是数值数组(其中每个元素表示固定长度 24 小时天数)。有关详细信息,请参阅比较日期和时间。如果一个输入是字符串数组,则另一个输入可以是字符串数组、字符向量或字符向量元胞数组。
A和B的对应元素以字典顺序进行比较。有关详细信息,请参阅比较文本。
表或时间表形式的输入必须满足以下条件: (自 R2023a 起)
如果输入是表或时间表,则其所有变量都必须有支持该运算的数据类型。
如果只有一个输入是表或时间表,则另一个输入必须为数值或逻辑数组。
如果两个输入均为表或时间表,则:
两个输入必须具有相同的大小,或其中一个必须为单行表。
两个输入必须有相同名称的变量。但是,每个输入中的变量可以有不同的顺序。
如果两个输入均为表,并且都有行名称,则其行名称必须相同。但是,每个输入中的行名称可以有不同的顺序。
如果两个输入均为时间表,则其行时间必须相同。但是,每个输入中的行时间可以有不同的顺序。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | categorical | datetime | duration | table | timetable
复数支持: 是
扩展功能
ne 函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
用法说明和限制:
代码生成不支持使用
ne来测试枚举成员与字符串数组、字符数组或字符数组元胞数组之间的不相等性。
用法说明和限制:
代码生成不支持使用
ne来测试枚举成员与字符串数组、字符数组或字符数组元胞数组之间的不相等性。
HDL 代码生成
使用 HDL Coder™ 为 FPGA 和 ASIC 设计生成 VHDL、Verilog 和 SystemVerilog 代码。
ne 函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
ne 函数完全支持 GPU 数组。要在 GPU 上运行该函数,请将输入数据指定为 gpuArray (Parallel Computing Toolbox)。有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
ne 函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出ne 运算符支持直接对表和时间表执行运算,无效通过索引访问其变量。所有变量都必须具有支持该运算的数据类型。有关详细信息,请参阅Direct Calculations on Tables and Timetables。
从 R2020b 开始,当参量为 categorical、datetime 或 duration 数组时,ne 支持隐式扩展。在 R2020a 和 R2016b 之间,仅数值和字符串数据类型支持隐式扩展。
从 R2016b 开始增加了隐式扩展,以前返回错误的基本运算的一些参量组合现在能够生成结果。例如,以前无法对行和列向量执行加法运算,但现在这些操作数对加法运算是有效的。换句话说,[1 2] + [1; 2] 之类的表达式以前会返回大小不匹配错误,但现在可以正常执行了。
如果您的代码使用按元素运算符并依赖 MATLAB® 以前对不匹配大小返回的错误,尤其是在 try/catch 块内,那么您的代码可能不再捕获这些错误。
有关基本数组运算要求的输入大小的详细信息,请参阅基本运算的兼容数组大小。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)