How to multiply one array to all elements of a vector with a different size?

1 visualización (últimos 30 días)
Take
a=[1 2; 3 4]
and
b=[4 5 6]
How can I creat a 3D vector,
c(:,:,1)=a*b(1)
c(:,:,2)=a*b(2)
c(:,:,3)=a*b(3)
if I don't want to use a for loop. Is there any code for this multiplication in MATLAB?

Respuestas (1)

James Tursa
James Tursa el 27 de En. de 2022
Editada: James Tursa el 27 de En. de 2022
You can use implicit expansion with the element-wise multiply operator:
c = a .* reshape(b,1,1,[]);

Categorías

Más información sobre Programming en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by