Effacer les filtres
Effacer les filtres

Vectorizing the loop

1 vue (au cours des 30 derniers jours)
Nirmal
Nirmal le 24 Avr 2012
This code is similar to the histc function, but each element has weights associated with it. I'm looking to either use an alternate function or to vectorize it to make things faster
I have arrays A and B, and w is an array of weights associated with each element in A.
I'm hoping to calculate:
for i=1:length(B)
x(i) = sum((A>B(i)).*w)
end
Any help is appreciated. Thanks.
  5 commentaires
Nirmal
Nirmal le 24 Avr 2012
Not sure if that works - particularly because cumsum(histc(...)) will have the size of B and w will have the size of A.
Sean de Wolski
Sean de Wolski le 24 Avr 2012
+1

Connectez-vous pour commenter.

Réponse acceptée

Sean de Wolski
Sean de Wolski le 24 Avr 2012
x = w*bsxfun(@gt,A.',B)
  1 commentaire
Nirmal
Nirmal le 24 Avr 2012
Awesome

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by