adding matrix to every column in other matrix

 Respuesta aceptada

Cedric
Cedric el 14 de Abr. de 2013
Editada: Cedric el 14 de Abr. de 2013
b_ext = repmat(b, 1, size(a, 2)) ;
c = a + b_ext ;

Más respuestas (1)

James Tursa
James Tursa el 14 de Abr. de 2013
bsxfun(@plus,a,b)

2 comentarios

Cedric
Cedric el 14 de Abr. de 2013
Editada: Cedric el 14 de Abr. de 2013
+1
I don't understand why it is slower than REPMAT though in cases where size(a,2) is not too large .. I thought that it would kill repmat when I tested.
James Tursa
James Tursa el 14 de Abr. de 2013
I haven't tested bsxfun much, but I am not surprised by the timing. I have read many accounts here for various problems and several times it has come up that explicit formulations in one way or another beat bsxfun for speed. For small problems like this one the timing is likely irrelevant anyway.

Iniciar sesión para comentar.

Categorías

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by