Main Content

ldivide, .\

数组左除

说明

示例

x = B.\AA 的每个元素除以 B 的对应元素。AB 的大小必须相同或兼容

如果 AB 的大小兼容,则这两个数组会隐式扩展以相互匹配。例如,如果 AB 中的一个是标量,则该标量与另一个数组的每个元素相结合。此外,具有不同方向的向量(一个为行向量,另一个为列向量)会隐式扩展以形成矩阵。

x = ldivide(B,A) 是用 AB 这一操作的替代方法,但很少使用。它可以启用类的运算符重载。

示例

全部折叠

创建两个数值数组 AB,并用第二个数组 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 = 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)

a=[a1a2],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

输入参数

全部折叠

操作数,指定为标量、向量、矩阵、多维数组、表或时间表。输入 AB 必须具有相同的大小或具有兼容的大小(例如,A 是一个 M×N 矩阵,B 是标量或 1×N 行向量)。有关详细信息,请参阅基本运算的兼容数组大小

  • 如果 AB 是整数数据类型,则另一个输入必须为相同的整数类型或为双精度标量。整数数据类型的操作数不能为复数。

表或时间表形式的输入必须满足以下条件: (自 R2023a 起)

  • 如果输入是表或时间表,则其所有变量都必须有支持该运算的数据类型。

  • 如果只有一个输入是表或时间表,则另一个输入必须为数值或逻辑数组。

  • 如果两个输入均为表或时间表,则:

    • 两个输入必须具有相同的大小,或其中一个必须为单行表。

    • 两个输入必须有相同名称的变量。但是,每个输入中的变量可以有不同的顺序。

    • 如果两个输入均为表,并且都有行名称,则其行名称必须相同。但是,每个输入中的行名称可以有不同的顺序。

    • 如果两个输入均为时间表,则其行时间必须相同。但是,每个输入中的行时间可以有不同的顺序。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | duration | char | table | timetable
复数支持:

提示

  • 按元素运算符 ./.\ 通过等式 A./B = B.\A 相互关联。

  • 除以整数时,使用 idivide 可获得更多四舍五入选项。

  • MATLAB® 不支持复整数除法。

扩展功能

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

版本历史记录

在 R2006a 之前推出

全部展开