文件

兼容数组尺寸,用于基本操作

Matlab中最多的二进制(两输入)运算符和函数®金宝app支持具有的数字阵列兼容大小。两个输入具有兼容大小的尺寸,如果每个维度,输入的尺寸尺寸是相同的或其中一个。在最简单的情况下,如果它们完全相同或者一个是标量,则两个数组大小兼容。。MATLAB在执行元素-Wise操作或功能期间,使用兼容大小的兼容大小占用阵列。

具有兼容尺寸的输入

2-D输入

这些是具有兼容尺寸的标量,矢量和矩阵的组合:

  • 两个完全相同的输入。

  • 一个输入是标量。

  • 一个输入是矩阵,另一个输入是具有相同行数的列向量。

  • 一个输入是列向量,另一个输入是行向量。

多维阵列

在MATLAB中,每个数组的尾维数都是1。对于多维数组,这意味着3 × 4矩阵与大小为3 × 4 × 1 × 1 × 1的矩阵相同。具有兼容大小的多维数组示例如下:

  • 一个输入是矩阵,另一个输入是具有相同行数和列的三维数组。

  • 一个输入是矩阵,另一个输入是3-D阵列。尺寸是相同的,或者其中一个是1。

空阵列

对于具有零尺寸大小的空阵列或阵列的规则是相同的。不等于1的尺寸的大小确定了输出的大小。这意味着具有零尺寸的尺寸必须与其他阵列中的大小1或0的尺寸配对,并且输出的尺寸大小为0。

答:1-by-0 B:3×1结果:3×0

具有不兼容尺寸的输入

不兼容的输入具有不能隐含地扩展为相同的大小。例如:

  • 其中一个尺寸尺寸不等于,也不是1。

    答:3-by-2 B:4-by-2
  • 两个不同时的非圆形行向量,其长度不一样。

    答:1-by-3 B:1-BY-4

例子

从矩阵中减去矢量

为了简化矢量矩阵操作,请使用尺寸函数的隐式扩展,例如的意思是, 和别的。

例如,计算矩阵中每列的平均值,然后从每个元素中减去平均值。

A =魔术(3)
A = 8 1 6 3 5 7 4 9 2
c =均值(a)
c = 5 5 5
A  -  C.
ans = 3 -4 1 -2 0 2 -1 4 -3

添加行和列向量

行和列向量具有兼容的大小,并且当您对它们执行操作时,结果是矩阵。

例如,添加行和列向量。结果与bsxfun(@加,a,b)

a = [1 2 3 4]
ans = 1 2 3 4
B = [5;6;7]
ans = 5 6 7
A + B.
ANS = 6 7 8 9 7 8 9 10 8 9 10 11

也可以看看

相关的话题

这个主题有用吗?