假设我有一个矩阵:
A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12];
有没有办法繁殖:第1行第1行第2排2第3行第3行等等?
我能够使用for循环执行此操作,但是如果对于他们希望我们使用矩阵的分配,它 . 在实际的分配中, A 用随机数填充但每行连续相乘 .
A
谢谢,非常感谢任何帮助
你只需将对角矩阵乘以A就好了 .
A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12]; disp(diag([1 2 3 4]) * A); 1 2 3 8 10 12 21 24 27 40 44 48
您可以使用 bsxfun 轻松快速地完成此操作
bsxfun
out = bsxfun(@times, [1 2 3 4].', A)
在较新版本的MATLAB(R2016b和更新版本)中,您实际上可以用 * 替换 bsxfun
*
out = [1 2 3 4].' * A;
2 回答
你只需将对角矩阵乘以A就好了 .
您可以使用
bsxfun
轻松快速地完成此操作在较新版本的MATLAB(R2016b和更新版本)中,您实际上可以用
*
替换bsxfun