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?

 Risposta accettata

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

2 Commenti

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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by