Matlab将矩阵中的每一行乘以不同的数字

时间:2016-10-19 01:24:15

标签: matlab matrix vector multiplication

说我有一个矩阵:

A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12];

有没有办法繁殖:
第1行第1行 第2行乘2 第3行第3行 等等?

我能够使用for循环执行此操作,但是如果对于他们希望我们使用矩阵的分配,它。 在实际分配A中填充了随机数,但每行连续相乘。

谢谢,非常感谢任何帮助

2 个答案:

答案 0 :(得分:6)

你只需将对角矩阵乘以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

答案 1 :(得分:5)

您可以使用SELECT f.*, p.* FROM table_follows f JOIN table_posts p ON f.id_followed = p.id_user WHERE f.id_follower = '3' 轻松快速地完成此操作

bsxfun

在较新版本的MATLAB(R2016b及更新版本)中,您实际上只需out = bsxfun(@times, [1 2 3 4].', A) 替换bsxfun

*