Binarize labels in a one-vs-all fashion.
Several regression and binary classification algorithms are available in scikit-learn. A simple way to extend these algorithms to the multi-class classification case is to use the so-called one-vs-all scheme.
This function makes it possible to compute this transformation for a fixed set of class labels known ahead of time.
Sequence of integer labels or multilabel data to encode.
Uniquely holds the label for each class.
Value with which negative labels must be encoded.
Value with which positive labels must be encoded.
Set to true if output binary array is desired in CSR sparse format.
Shape will be (n_samples, 1) for binary problems. Sparse matrix will be of CSR format.
See also
LabelBinarizerClass used to wrap the functionality of label_binarize and allow for fitting to classes independently of the transform operation.
>>> from sklearn.preprocessing import label_binarize
>>> label_binarize([1, 6], classes=[1, 2, 4, 6])
array([[1, 0, 0, 0],
[0, 0, 0, 1]])
The class ordering is preserved:
>>> label_binarize([1, 6], classes=[1, 6, 4, 2])
array([[1, 0, 0, 0],
[0, 1, 0, 0]])
Binary targets transform to a column vector
>>> label_binarize(['yes', 'no', 'no', 'yes'], classes=['no', 'yes'])
array([[1],
[0],
[0],
[1]])
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.preprocessing.label_binarize.html