Hi Peter,
this is also the behavior of the numpy histogram function. I personally
don't like it, but I think it's kept for compatibility's sake with Numeric.
You could use
def histogram(a, bins):
n = sort(a).searchsorted(bins)
n = concatenate([n, [len(a)]])
count = concatenate([[n[0]], n[1:]-n[:-1]])
return count
which will return an array where the first bin is the undershoot and the
last the overshoot. If you need something fancier (or faster), you may want
to look at the histogram function at http://www.scipy.org/DavidHuard (still
a work in progress).
Cheers,
David
2007/3/15, Peter Melchior <pme...@it...>:
>
> Hello,
>
> thanks for the quick reply to my last problem.
> Here I've got a new one:
>
> While the last bin carries the overshoot, the first bin does not carry the
> undershoot.
>
> Example:
>
> from numpy import *
> from pylab import *
>
> bins = 2 + arange(21)
> data = arange(24)
> print bins
> print data
> hist(data,bins)
> show()
>
> The last bin has two counts since it contains the entries 22 and 23 from
> data,
> but the first bin has only one count, although it should carry the entries
> 0,1,2.
>
> Is this intended?
>
> Best regards,
>
> Peter Melchior
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
|