Getting a j x k Matrix from j and k-dimensional Vectors Without a For Loop?

1 回表示 (過去 30 日間)
Mark Rzewnicki
Mark Rzewnicki 2020 年 3 月 23 日
編集済み: per isakson 2020 年 3 月 24 日
Suppose I have two column vectors:
J = j x 1 vector
K = k x 1 vector
And I want to create a j x k matrix, W:
W = j x k matrix
where the columns of W are formed by multiplying the corresponding element of K by the vector J.
The for loop to create W looks like this :
% J = j x 1 vector
% K = k x 1 vector
W = zeros(length(J),length(K));
for i = 1:1:length(K)
W(:,i) = K(i)*J;
end
Numerical example:
J = [1 2 3]';
K = [4 5]';
should result in
W =
4 5
8 10
12 15
Is there any way I can avoid the for loop here? Thanks!
  2 件のコメント
per isakson
per isakson 2020 年 3 月 23 日
Homework?
Mark Rzewnicki
Mark Rzewnicki 2020 年 3 月 23 日
Nope, just a project for fun on the side. I'm looking at large computing times here so I'm anxious to avoid as many loops as possible.

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

採用された回答

per isakson
per isakson 2020 年 3 月 23 日
編集済み: per isakson 2020 年 3 月 24 日
>> J*K'
ans =
4 5
8 10
12 15
  1 件のコメント
Mark Rzewnicki
Mark Rzewnicki 2020 年 3 月 23 日
Hah, now I see why you asked if it was homework. Should have been obvious that all I needed to do was transpose.
Thank you!

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

製品


リリース

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by