Nils Wagner wrote: > Hi all, > > I have a list of integer numbers. The entries can vary between 0 and 19. > How can I count the occurrence of any number. Consider > > >>> data > [9, 6, 9, 6, 7, 9, 9, 10, 7, 9, 9, 6, 7, 9, 8, 8, 11, 9, 6, 7, 10, 9, 7, 9, > 7, 8, 9, 8, 7, 9] > > > Is there a better way than using, e.g. > >>>> shape(where(array(data)==10))[1] > 2 > > > to compute the occurrence of 10 in the list which is 2 in this case ?
Your way is ok if you want to count just a few numbers. If you want all, you may sort the array and use searchorted: b = sort( a ) count = searchsorted( b, 7, side = 'right' ) - searchsorted( b, 7, side = 'left' ) r. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion