multiplying multiple values inside multiple matrices
3 次查看(过去 30 天)
显示 更早的评论
Hello,
I have multiple matrices (all quite large, of equal size) that all need to be multiplied into a final matrix. For example, if I have a matrix [2, 2] and another [3, 2], I need to find a way to multiply these two to obtain [6, 4]. The trick being that each matrix value is multiplied by the corresponding value in the same location in all the other matrices.
Thanks
1 个评论
Azzi Abdelmalek
2013-9-24
编辑:Azzi Abdelmalek
2013-9-24
If
A=[1 2;3 4]
B=[1 2;3 4;5 6]
What is the expected result?
采纳的回答
Image Analyst
2013-9-24
Since they are all of the same size, and you want to multiply them element by element, you can simply dot multiply:
c1 = a .* b; % For only two matrices.
c2 = a .* b .* c .* d .* e; % for 5 matrices.
1 个评论
Image Analyst
2013-9-24
For your new question on means:
meanOf2 = (a + b) / 2; % Mean of two matrices.
meanOf5 = (a+b+c+d+e)/5; % Mean of 5 matrices.
更多回答(1 个)
Azzi Abdelmalek
2013-9-24
Maybe this is what you want
A=[1 2;3 4]
B=[1 2;3 4;5 6]
out=cell2mat(arrayfun(@(x) x*B,A,'un',0))
3 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!