在Matlab中减去不同大小的数组

时间:2015-03-02 19:37:33

标签: matlab

如果我有一个数组:

  A[ 1
    2
    3
    4]

和另一个数组:

B= [1   2   3   4]

我想在数组B的每一列中减去数组A中的每一行

就像这样:

0   1   2   3
-1  0   1   2
-2  -1  0   1
-3  -2  -1  0

数组A中的每一行都减去了数组B中的每一列。这里的每一列代表A中的每一行,那么我将如何做到这一点?

1 个答案:

答案 0 :(得分:3)

如果您的意思是 SUBTRACT 数组中的每一行A FROM 数组B的每一列 -

bsxfun(@minus,B(:).',A(:))

如果您的意思是 FROM 数组A中的每一行, SUBTRACT 数组B的每一列 -

bsxfun(@minus,A(:),B(:).')