multiply and addition rows of matrices
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I got a matrix p = [ 1; 2 ; 3; 4] so in general dimension p(m) (=4) and a matrix w(m,n) (=4,2) witch is w= [ 2 4; 6 8; 1 3 ; 5 7] now i want to multiply each row of w(m,n) by the number of p(m). So multiplication row by row. So the result must be f=[ 2 4; 12 18; 3 9; 20 28]. i tried f=p*w but it gives not the right result.
Second all the rows of f must be add to eachother so f have only one row with elements the addition of all rows. In the example: f=[ 2+12+3+20 4+18+9+27] Thx in advance
1 comentario
Sean de Wolski
el 9 de Mayo de 2011
Well asked question! You provided a small example, what you've tried, what you expect and dimensions - everything we typically ask for.
Respuesta aceptada
Sean de Wolski
el 9 de Mayo de 2011
Basic Singleton eXpansion along the 2nd dimension:
f = sum(bsxfun(@times,p,w))
2 comentarios
Sean de Wolski
el 9 de Mayo de 2011
You just use the 'sum' function as I have above. It defaults to summing columns.
Más respuestas (1)
Bjorn Gustavsson
el 9 de Mayo de 2011
Golf:
f = (w'*p)';
If you need the same function for complex numbers yuo might have to pay 2 extra characters:
f = (w.'*p).';
0 comentarios
Ver también
Categorías
Más información sobre Performance and Memory 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!