matrix and vector multiplication without for loop

11 visualizzazioni (ultimi 30 giorni)
Mohamed
Mohamed il 23 Nov 2013
Commentato: Harry MacDowel il 23 Nov 2013
Hi, I have 3 matrices "X" is m x n matrix and "Y" is m x 1 column vector, I want to multiply each column of X by the vector Y and calculate the sum of each multiplied column and put them in column vector "G" which is n x 1. Is there any way to do this without using for loops (vectorized solution) ?

Risposte (2)

Roger Stafford
Roger Stafford il 23 Nov 2013

Azzi Abdelmalek
Azzi Abdelmalek il 23 Nov 2013
Modificato: Azzi Abdelmalek il 23 Nov 2013
n=4;
m=3;
X=rand(m,n); % Example
Y=rand(m,1);
G=sum(bsxfun(@times,X,Y))'

Categorie

Scopri di più su Linear Algebra in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by