MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
数组左除
x = B.\A
x = ldivide(B,A)
x = B.\A 用 A 的每个元素除以 B 的对应元素。A 和 B 的大小必须相同或兼容。
B
A
如果 A 和 B 的大小兼容,则这两个数组会隐式扩展以相互匹配。例如,如果 A 或 B 中的一个是标量,则该标量与另一个数组的每个元素相结合。此外,具有不同方向的向量(一个为行向量,另一个为列向量)会隐式扩展以形成矩阵。
示例
x = ldivide(B,A) 是用 A 除 B 这一操作的替代方法,但很少使用。它可以启用类的运算符重载。
全部折叠
创建两个数值数组 A 和 B,并用第二个数组 A 除以第一个数组 B。
A = ones(2,3); B = [1 2 3; 4 5 6]; x = B.\A
x = 2×3 1.0000 0.5000 0.3333 0.2500 0.2000 0.1667
创建一个标量 c,并用一个数值数组除以该标量。结果的大小与数组相同。
c
c = 2; D = [1 2 3; 4 5 6]; x = D.\c
x = 2×3 2.0000 1.0000 0.6667 0.5000 0.4000 0.3333
创建 1×2 行向量和 3×1 列向量,并将它们相除。
a = 1:2; b = (1:3)'; b .\ a
ans = 3×2 1.0000 2.0000 0.5000 1.0000 0.3333 0.6667
结果是一个 3×2 矩阵,其中矩阵中的每个 (i,j) 元素等于 b(i) .\ a(j):
b(i) .\ a(j)
a=[a1 a2], b=[b1b2b3], b .\ a=[b1 .\ a1b1 .\ a2b2 .\ a1b2 .\ a2b3 .\ a1b3 .\ a2].
自 R2023a 开始提供
创建两个表,并用第二个表除以第一个表。行名称(如果两者中都存在)和变量名称必须相同,但顺序不必相同。输出的行和变量与第一个输入的顺序相同。
B = table([1;2],[3;4],VariableNames=["V1","V2"],RowNames=["R1","R2"])
B=2×2 table V1 V2 __ __ R1 1 3 R2 2 4
A = table([4;2],[3;1],VariableNames=["V2","V1"],RowNames=["R2","R1"])
A=2×2 table V2 V1 __ __ R2 4 3 R1 2 1
x = B .\ A
x=2×2 table V1 V2 ___ _______ R1 1 0.66667 R2 1.5 1
操作数,指定为标量、向量、矩阵、多维数组、表或时间表。输入 A 和 B 必须具有相同的大小或具有兼容的大小(例如,A 是一个 M×N 矩阵,B 是标量或 1×N 行向量)。有关详细信息,请参阅基本运算的兼容数组大小。
M
N
1
如果 A 或 B 是整数数据类型,则另一个输入必须为相同的整数类型或为双精度标量。整数数据类型的操作数不能为复数。
表或时间表形式的输入必须满足以下条件: (自 R2023a 起)
如果输入是表或时间表,则其所有变量都必须有支持该运算的数据类型。
如果只有一个输入是表或时间表,则另一个输入必须为数值或逻辑数组。
如果两个输入均为表或时间表,则:
两个输入必须具有相同的大小,或其中一个必须为单行表。
两个输入必须有相同名称的变量。但是,每个输入中的变量可以有不同的顺序。
如果两个输入均为表,并且都有行名称,则其行名称必须相同。但是,每个输入中的行名称可以有不同的顺序。
如果两个输入均为时间表,则其行时间必须相同。但是,每个输入中的行时间可以有不同的顺序。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | duration | char | table | timetable 复数支持: 是
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
duration
char
table
timetable
按元素运算符 ./ 和 .\ 通过等式 A./B = B.\A 相互关联。
./
.\
A./B = B.\A
除以整数时,使用 idivide 可获得更多四舍五入选项。
idivide
MATLAB® 不支持复整数除法。
全部展开
ldivide 函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
ldivide
用法说明和限制:
如果将 ldivide 用于单精度类型和双精度类型操作数,则生成代码得出的结果与 MATLAB 得出的结果可能会有所不同。请参阅 单精度和双精度操作数的二元按元素运算 (MATLAB Coder)。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
ldivide 函数完全支持 GPU 数组。要在 GPU 上运行该函数,请将输入数据指定为 gpuArray (Parallel Computing Toolbox)。有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
gpuArray
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
ldivide 运算符支持直接对表和时间表执行运算,无效通过索引访问其变量。所有变量都必须具有支持该运算的数据类型。有关详细信息,请参阅Direct Calculations on Tables and Timetables。
从 R2020b 开始,当参量是 duration 数组时,ldivide 支持隐式扩展。在 R2020a 和 R2016b 之间,仅数值数据类型支持隐式扩展。
从 R2016b 开始增加了隐式扩展,以前返回错误的基本运算的一些参量组合现在能够生成结果。例如,以前无法对行和列向量执行加法运算,但现在这些操作数对加法运算是有效的。换句话说,[1 2] + [1; 2] 之类的表达式以前会返回大小不匹配错误,但现在可以正常执行了。
[1 2] + [1; 2]
如果您的代码使用按元素运算符并依赖 MATLAB 以前对不匹配大小返回的错误,尤其是在 try/catch 块内,那么您的代码可能不再捕获这些错误。
try
catch
有关基本数组运算要求的输入大小的详细信息,请参阅基本运算的兼容数组大小。
rdivide | mldivide | mrdivide | idivide
rdivide
mldivide
mrdivide
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 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处