Multiply Each Matrix in Cell Array by a Different Value

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?

 Réponse acceptée

James Tursa
James Tursa le 19 Mai 2017
Modifié(e) : James Tursa le 19 Mai 2017
result = cellfun(@times,A,num2cell(b),'uni',false);
But this just moves the loops (which are part of cellfun) into the background.

2 commentaires

No, it works for me. Perhaps your b was all zeros.
Simple and clean. Thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by