![](/img/trans.png)
[英]how to multiply each row with each row of another matrix elementwise in matlab?
[英]Matlab multiply each row in matrix by different number
假設我有一個矩陣:
A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12];
有沒有辦法繁殖:
第1行第1行
第2排2
第3行第3行
等等?
我能夠使用for循環執行此操作,但是如果對於他們希望我們使用矩陣的分配,它。 在實際分配中, 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
輕松快速地完成此任務
out = bsxfun(@times, [1 2 3 4].', A)
在較新版本的MATLAB(R2016b和更新版本)中,您實際上可以簡單地用*
替換bsxfun
out = [1 2 3 4].' * A;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.