列向量和矩阵的元素乘法

时间:2014-08-07 14:57:54

标签: matlab

我有一个n-by-1列向量A和一个n-by-m矩阵B。我希望A乘以B的每一列,以元素方式,以创建矩阵n-by-m矩阵C

例如:

% Input
A = [1; 2; 3];
B = [1 2 3 4; 5 6 7 8; 9 10 11 12];
C = % Some function of A and B

% Output:
C = [1 2 3 4; 10 12 14 16; 27 30 33 36]

我的问题:这可以在一行中完成,而不必创建循环吗? (MATLAB 8.1)

1 个答案:

答案 0 :(得分:5)

您正在寻找bsxfun。实现你想要的结果:

C = bsxfun(@times, A, B);

查看支持的功能的完整列表here