Error using ==> rdivide

2 vues (au cours des 30 derniers jours)
Matlab2010 le 11 Juin 2012
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

Réponse acceptée

the cyclist
the cyclist le 11 Juin 2012
Use the bsxfun() function:
>> w = bsxfun(@rdivide,w,sum(w,1));

Plus de réponses (1)

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


En savoir plus sur Time Series dans Help Center et File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by