Multiply Each Matrix in Cell Array by a Different Value

2 visualizaciones (últimos 30 días)
Alessandro
Alessandro el 19 de Mayo de 2017
Comentada: Alessandro el 19 de Mayo de 2017
I have a cell
A = {[1 2; 3 4]; [5 6; 7 8]};
and a vector
b = [1; 2]
and I want to multiply each matrix in A by the corresponding value in b. Is it possible to do that without loops?

Respuesta aceptada

James Tursa
James Tursa el 19 de Mayo de 2017
Editada: James Tursa el 19 de Mayo de 2017
result = cellfun(@times,A,num2cell(b),'uni',false);
But this just moves the loops (which are part of cellfun) into the background.
  2 comentarios
Walter Roberson
Walter Roberson el 19 de Mayo de 2017
No, it works for me. Perhaps your b was all zeros.
Alessandro
Alessandro el 19 de Mayo de 2017
Simple and clean. Thanks!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by