使用MATLAB进行矩阵乘法

Cen*_*lmy 1 matlab

如果我有以下矩阵:

a=[10   1   0   1   1
   50   1   0   0   0
   60   0   0   0   1]
Run Code Online (Sandbox Code Playgroud)

我怎样才能将矩阵[10 50 60]'中的第一列乘以向量乘法到矩阵的其余部分并得到以下结果:

b=[10  10  0  10  10
   50  50  0   0   0
   60  0   0   0   60]
Run Code Online (Sandbox Code Playgroud)

Adr*_*ien 5

为此,bsxfun您需要的是:

b = [a(:,1) bsxfun(@times,a(:,2:end),a(:,1))]
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助,

一个.