dot product between two different size of matrix

31 ビュー (過去 30 日間)
Alan
Alan 2020 年 12 月 18 日
コメント済み: James Tursa 2021 年 12 月 14 日
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!

採用された回答

Ive J
Ive J 2020 年 12 月 18 日
X = sum(bsxfun(@times, A, B), 2);
  1 件のコメント
Alan
Alan 2020 年 12 月 18 日
Thank you! This is what I want.

サインインしてコメントする。

その他の回答 (1 件)

James Tursa
James Tursa 2020 年 12 月 18 日
Assuming everything is real and by "dot product" you aren't involving complex conjugates, simply this
C = B * A';
  3 件のコメント
Prajwal Sridhar
Prajwal Sridhar 2021 年 12 月 9 日
Is this same if i have matrix which is 50x2 and 2x2?
James Tursa
James Tursa 2021 年 12 月 14 日
@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.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by