dot product between two different size of matrix

Hello,
I have two matrix, one is A (1by 3 matrix), the other one is B (86 by 3 matrix). And I would like to calculate the dot product of dot(A,B). However, A and B are not the same size, so dot(A,B) function can not be performed successfullly.
How can I calculate the dot product between two different size of matrix without using for loop?
Many thanks!

 Réponse acceptée

Ive J
Ive J le 18 Déc 2020
X = sum(bsxfun(@times, A, B), 2);

Plus de réponses (1)

Assuming everything is real and by "dot product" you aren't involving complex conjugates, simply this
C = B * A';

3 commentaires

Alan
Alan le 18 Déc 2020
Thanks a lot! This method works more efficiently! And it performs in a simple way! Good method!
Is this same if i have matrix which is 50x2 and 2x2?
@Prajwal Sridhar Try it and see if it does what you want. If it doesn't, then open up a new Question and post a small example of inputs and desired output.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrices and Arrays dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by