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

1 visualizzazione (ultimi 30 giorni)
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!

Risposta accettata

per isakson
per isakson il 23 Mar 2020
Modificato: per isakson il 24 Mar 2020
>> J*K'
ans =
4 5
8 10
12 15
  1 Commento
Mark Rzewnicki
Mark Rzewnicki il 23 Mar 2020
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!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Prodotti


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by