How to multiply row of matrix A with column of matrix B?
6 views (last 30 days)
Show older comments
Kalasagarreddi Kottakota
on 24 Nov 2021
Edited: James Tursa
on 25 Nov 2021
A is 121 x 36 matrix
B is 36 x 121 matrix
The result C should be 121 x 1 matrix.
May I know how should I multiply a row of A with col of B? so that resulting matrix is 121 X 1.
No loops please.
2 Comments
the cyclist
on 24 Nov 2021
One row of A is 36 elements. One column of B is 36 elements. It is absolutely unclear how to get a 121x1 matrix from that.
Please explain more clearly what you need. Perhaps use a smaller example (e.g. 4x3) to show exactly what the input and output should be.
Accepted Answer
James Tursa
on 25 Nov 2021
Edited: James Tursa
on 25 Nov 2021
Maybe this is what you want?
C = sum(A .* B.',2)
0 Comments
More Answers (1)
the cyclist
on 24 Nov 2021
If @Adam Danz is correct that you actually want to multiply all the elements of one column of A with one row of B, then
% Define A and B
A = rand(121,36);
B = rand(36,121);
% Which row and column?
colA = 2;
rowB = 3;
% Multiply the selected row and column
V = A(:,colA) .* B(rowB,:).'; % <----- Note that I used the transpose here
% Check the size of V
size(V)
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!