Borrar filtros
Borrar filtros

Error using ==> rdivide

4 visualizaciones (últimos 30 días)
Matlab2010
Matlab2010 el 11 de Jun. de 2012
For
w = randn(10, 51300);
w = w./ sum(w,1);
i get
??? Error using ==> rdivide
Matrix dimensions must agree.
For each column of 10 elements, I wish to divide each element by sum(w,1).
How can I do this without using a for loop? thanks

Respuesta aceptada

the cyclist
the cyclist el 11 de Jun. de 2012
Use the bsxfun() function:
>> w = bsxfun(@rdivide,w,sum(w,1));

Más respuestas (1)

Greg Heath
Greg Heath el 13 de Jun. de 2012
clear all, clc
rng(4151941)
w = randn(2, 3)
w1 = w./ repmat(sum(w),2,1)
w2 = bsxfun(@rdivide,w,sum(w))
e12 = norm(w1-w2)
Hope this helps.
Greg

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by