Indexing multiple values over large array?

2 vues (au cours des 30 derniers jours)
MohammedLee Lee
MohammedLee Lee le 17 Déc 2013
Commenté : MohammedLee Lee le 18 Déc 2013
It seems like there would be a function for this but no idea what it would be. Basically,I have an vector generated by histc, e.g.:
1
3
1
0
1
and what it's referring to;
150018
150470
150899
151353
151770
152753
153242
i.e. the first value (150018) is the first bin, the next three values the second bin etc., but I now need to subtract each value in each bin from varying values in another vector - values in bin1-value1, values in bin3(three of them)-value2 and so on.....
I don't see how to do this quickly, but I hope someone know how to use a built-in function and could help?
  3 commentaires
Sean de Wolski
Sean de Wolski le 17 Déc 2013
There are seven values but only six in bins...
MohammedLee Lee
MohammedLee Lee le 18 Déc 2013
bin corresponding to 0 means there are none of the 6 figure values from that vector between binrange values (another vector not shown)
Also the values don't match in size just cause I used them as examples, sorry for the confusion

Connectez-vous pour commenter.

Réponses (1)

Oliver Woodford
Oliver Woodford le 17 Déc 2013
histc outputs the bin index of each input value in the second output argument. So you can do:
[~, ind] = histc(vals);
vals = vals - off(ind);

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by