如何在matlab中向矩阵添加矢量?

时间:2012-06-16 18:40:40

标签: matlab

如何在Matlab中向矩阵中添加一个向量,方式是将i的矢量索引添加到i行的所有成员中?

例如:

A = [1 2 3;
     4 5 6;
     6 7 8]
v = [1;
     2;
     3]

所需的结果是:

[2 3 4;
 6 7 8;
 9 10 11]

非常感谢。

3 个答案:

答案 0 :(得分:8)

您可以使用bsxfun

B=bsxfun(@plus,A,v);

答案 1 :(得分:7)

只是为了好玩:

A + v(:,[1 1 1]);

答案 2 :(得分:5)

bsxfun的替代方法是使用repmat并重复列向量v,因为A有列:

A = [1 2 3; 4 5 6; 6 7 8];
v = [1; 2; 3]

A = A + repmat(v,1,3);