1

我有一个 nx1 向量和一个 1xn 向量。我想以一种特殊的方式添加它们,比如以一种有效的方式(向量化)进行矩阵乘法:

例子:

A=[1 2 3]'

B=[4 5 6]

A \odd_add B = 
[1+4 1+5 1+6
 2+4 2+5 2+6
 3+4 3+5 3+6
]

问候

4

3 回答 3

2

您可以使用bsxfun

A=[1 2 3]'

B=[4 5 6]

bsxfun(@plus, A, B)

结果是

ans =

     5     6     7
     6     7     8
     7     8     9
于 2012-07-27T15:19:47.003 回答
0

您可以使用该repmat函数(复制矩阵):

repmat(A,1,3)+repmat(B,3,1)
于 2012-07-27T17:54:23.783 回答
0

从 R2016b 开始,您可以简单地执行以下操作:

A=[1 2 3]'

B=[4 5 6]

A+B

ans =

     5     6     7
     6     7     8
     7     8     9

Matlab 将默默地扩展两个向量并进行元素明智的求和。此功能并非没有争议。您可以在此处查看详细信息:

Matlab 扩展算术

于 2020-05-08T15:44:28.667 回答