base (version 3.6.2)

# .bincode: Bin a Numeric Vector

## Description

Bin a numeric vector and return integer codes for the binning.

## Usage

`.bincode(x, breaks, right = TRUE, include.lowest = FALSE)`

## Arguments

x

a numeric vector which is to be converted to integer codes by binning.

breaks

a numeric vector of two or more cut points, sorted in increasing order.

right

logical, indicating if the intervals should be closed on the right (and open on the left) or vice versa.

include.lowest

logical, indicating if an ‘x[i]’ equal to the lowest (or highest, for `right = FALSE`) ‘breaks’ value should be included in the first (or last) bin.

## Value

An integer vector of the same length as `x` indicating which bin each element falls into (the leftmost bin being bin `1`). `NaN` and `NA` elements of `x` are mapped to `NA` codes, as are values outside range of `breaks`.

## Details

This is a ‘barebones’ version of ```cut.default(labels = FALSE)``` intended for use in other functions which have checked the arguments passed. (Note the different order of the arguments they have in common.)

Unlike `cut`, the `breaks` do not need to be unique. An input can only fall into a zero-length interval if it is closed at both ends, so only if `include.lowest = TRUE` and it is the first (or last for `right = FALSE`) interval.

`cut`, `tabulate`

## Examples

Run this code
``````# NOT RUN {
## An example with non-unique breaks:
x <- c(0, 0.01, 0.5, 0.99, 1)
b <- c(0, 0, 1, 1)
.bincode(x, b, TRUE)
.bincode(x, b, FALSE)
.bincode(x, b, TRUE, TRUE)
.bincode(x, b, FALSE, TRUE)
# }
``````

Run the code above in your browser using DataCamp Workspace