sklearn.preprocessing.MultiLabelBinarizer — scikit-learn 0.20.4 documentation (original) (raw)
class sklearn.preprocessing. MultiLabelBinarizer(classes=None, sparse_output=False)[source]¶
Transform between iterable of iterables and a multilabel format
Although a list of sets or tuples is a very intuitive format for multilabel data, it is unwieldy to process. This transformer converts between this intuitive format and the supported multilabel format: a (samples x classes) binary matrix indicating the presence of a class label.
| Parameters: | classes : array-like of shape [n_classes] (optional) Indicates an ordering for the class labels. All entries should be unique (cannot contain duplicate classes). sparse_output : boolean (default: False), Set to true if output binary array is desired in CSR sparse format |
|---|---|
| Attributes: | classes_ : array of labels A copy of the classes parameter where provided, or otherwise, the sorted set of classes found when fitting. |
Examples
from sklearn.preprocessing import MultiLabelBinarizer mlb = MultiLabelBinarizer() mlb.fit_transform([(1, 2), (3,)]) array([[1, 1, 0], [0, 0, 1]]) mlb.classes_ array([1, 2, 3])
mlb.fit_transform([set(['sci-fi', 'thriller']), set(['comedy'])]) array([[0, 1, 1], [1, 0, 0]]) list(mlb.classes_) ['comedy', 'sci-fi', 'thriller']
Methods
| fit(y) | Fit the label sets binarizer, storing classes_ |
|---|---|
| fit_transform(y) | Fit the label sets binarizer and transform the given label sets |
| get_params([deep]) | Get parameters for this estimator. |
| inverse_transform(yt) | Transform the given indicator matrix into label sets |
| set_params(**params) | Set the parameters of this estimator. |
| transform(y) | Transform the given label sets |
__init__(classes=None, sparse_output=False)[source]¶
Fit the label sets binarizer, storing classes_
| Parameters: | y : iterable of iterables A set of labels (any orderable and hashable object) for each sample. If the classes parameter is set, y will not be iterated. |
|---|---|
| Returns: | self : returns this MultiLabelBinarizer instance |
Fit the label sets binarizer and transform the given label sets
| Parameters: | y : iterable of iterables A set of labels (any orderable and hashable object) for each sample. If the classes parameter is set, y will not be iterated. |
|---|---|
| Returns: | y_indicator : array or CSR matrix, shape (n_samples, n_classes) A matrix such that y_indicator[i, j] = 1 iff classes_[j] is iny[i], and 0 otherwise. |
get_params(deep=True)[source]¶
Get parameters for this estimator.
| Parameters: | deep : boolean, optional If True, will return the parameters for this estimator and contained subobjects that are estimators. |
|---|---|
| Returns: | params : mapping of string to any Parameter names mapped to their values. |
inverse_transform(yt)[source]¶
Transform the given indicator matrix into label sets
| Parameters: | yt : array or sparse matrix of shape (n_samples, n_classes) A matrix containing only 1s ands 0s. |
|---|---|
| Returns: | y : list of tuples The set of labels for each sample such that y[i] consists ofclasses_[j] for each yt[i, j] == 1. |
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form<component>__<parameter> so that it’s possible to update each component of a nested object.
| Returns: | self |
|---|
Transform the given label sets
| Parameters: | y : iterable of iterables A set of labels (any orderable and hashable object) for each sample. If the classes parameter is set, y will not be iterated. |
|---|---|
| Returns: | y_indicator : array or CSR matrix, shape (n_samples, n_classes) A matrix such that y_indicator[i, j] = 1 iff classes_[j] is iny[i], and 0 otherwise. |