Counts the number of elements in non-overlapping bins
Usage
binCounts(x, idxs=NULL, bx, right=FALSE, ...)
Arguments
x
A numericvector of K positions for to be binned and counted.
idxs
A vector indicating subset of elements
to operate over. If NULL, no subsetting is done.
bx
A numericvector of B+1 ordered positions specifying
the B > 0 bins [bx[1],bx[2]), [bx[2],bx[3]), ...,
[bx[B],bx[B+1]).
right
If TRUE, the bins are right-closed (left open),
otherwise left-closed (right open).
...
Not used.
Details
binCounts(x, bx, right=TRUE) gives equivalent results as
rev(binCounts(-x, bx=rev(-bx), right=FALSE)), but is
faster and more memory efficient.
Value
Returns an integervector of length B with non-negative integers.
Missing and non-finite values
Missing values in x are ignored/dropped.
Missing values in bx are not allowed and gives an error.
Author(s)
Henrik Bengtsson
See Also
An alternative for counting occurrences within bins is
hist, e.g. hist(x, breaks=bx, plot=FALSE)$counts.
That approach is ~30-60% slower than binCounts(..., right=TRUE).
To count occurrences of indices x (positive integers) in
[1,B], use tabulate(x, nbins=B), where x does
not have to be sorted first.
For details, see tabulate().