sklearn.preprocessing.binarize(X, *, threshold=0.0, copy=True)[source]

Boolean thresholding of array-like or scipy.sparse matrix.

Read more in the User Guide.

X{array-like, sparse matrix} of shape (n_samples, n_features)

The data to binarize, element by element. scipy.sparse matrices should be in CSR or CSC format to avoid an un-necessary copy.

thresholdfloat, default=0.0

Feature values below or equal to this are replaced by 0, above it by 1. Threshold may not be less than 0 for operations on sparse matrices.

copybool, default=True

If False, try to avoid a copy and binarize in place. This is not guaranteed to always work in place; e.g. if the data is a numpy array with an object dtype, a copy will be returned even with copy=False.

X_tr{ndarray, sparse matrix} of shape (n_samples, n_features)

The transformed data.

See also


Performs binarization using the Transformer API (e.g. as part of a preprocessing Pipeline).


>>> from sklearn.preprocessing import binarize
>>> X = [[0.4, 0.6, 0.5], [0.6, 0.1, 0.2]]
>>> binarize(X, threshold=0.5)
array([[0., 1., 0.],
       [1., 0., 0.]])