Package mdp :: Package nodes :: Class OneHotEncoderScikitsLearnNode
[hide private]
[frames] | no frames]

Class OneHotEncoderScikitsLearnNode



Encode categorical integer features using a one-hot aka one-of-K scheme.

This node has been automatically generated by wrapping the ``sklearn.preprocessing.data.OneHotEncoder`` class
from the ``sklearn`` library.  The wrapped instance can be accessed
through the ``scikits_alg`` attribute.

The input to this transformer should be a matrix of integers, denoting
the values taken on by categorical (discrete) features. The output will be
a sparse matrix where each column corresponds to one possible value of one
feature. It is assumed that input features take on values in the range
[0, n_values).

This encoding is needed for feeding categorical data to many scikit-learn
estimators, notably linear models and SVMs with the standard kernels.

Read more in the :ref:`User Guide <preprocessing_categorical_features>`.

**Parameters**

n_values : 'auto', int or array of ints
    Number of values per feature.

    - 'auto' : determine value range from training data.
    - int : maximum value for all features.
    - array : maximum value per feature.

categorical_features: "all" or array of indices or mask
    Specify what features are treated as categorical.

    - 'all' (default): All features are treated as categorical.
    - array of indices: Array of categorical feature indices.
    - mask: Array of length n_features and with dtype=bool.

    Non-categorical features are always stacked to the right of the matrix.

dtype : number type, default=np.float
    Desired dtype of output.

sparse : boolean, default=True
    Will return sparse matrix if set True else will return an array.

handle_unknown : str, 'error' or 'ignore'
    Whether to raise an error or ignore if a unknown categorical feature is
    present during transform.

**Attributes**

``active_features_`` : array
    Indices for active features, meaning values that actually occur
    in the training set. Only available when n_values is ``'auto'``.

``feature_indices_`` : array of shape (n_features,)
    Indices to feature ranges.
    Feature ``i`` in the original data is mapped to features
    from ``feature_indices_[i]`` to ``feature_indices_[i+1]``
    (and then potentially masked by `active_features_` afterwards)

``n_values_`` : array of shape (n_features,)
    Maximum number of values per feature.

**Examples**

Given a dataset with three features and two samples, we let the encoder
find the maximum value per feature and transform the data to a binary
one-hot encoding.

>>> from sklearn.preprocessing import OneHotEncoder
>>> enc = OneHotEncoder()
>>> enc.fit([[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]])  # doctest: +ELLIPSIS
OneHotEncoder(categorical_features='all', dtype=<... 'float'>,
       handle_unknown='error', n_values='auto', sparse=True)
>>> enc.n_values_
array([2, 3, 4])
>>> enc.feature_indices_
array([0, 2, 5, 9])
>>> enc.transform([[0, 1, 1]]).toarray()
array([[ 1.,  0.,  0.,  1.,  0.,  0.,  1.,  0.,  0.]])

See also

sklearn.feature_extraction.DictVectorizer : performs a one-hot encoding of
  dictionary items (also handles string-valued features).
sklearn.feature_extraction.FeatureHasher : performs an approximate one-hot
  encoding of dictionary items or strings.

Instance Methods [hide private]
 
__init__(self, input_dim=None, output_dim=None, dtype=None, **kwargs)
Encode categorical integer features using a one-hot aka one-of-K scheme.
 
_execute(self, x)
 
_get_supported_dtypes(self)
Return the list of dtypes supported by this node. The types can be specified in any format allowed by numpy.dtype.
 
_stop_training(self, **kwargs)
Concatenate the collected data in a single array.
 
execute(self, x)
Transform X using one-hot encoding.
 
stop_training(self, **kwargs)
Fit OneHotEncoder to X.

Inherited from unreachable.newobject: __long__, __native__, __nonzero__, __unicode__, next

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __subclasshook__

    Inherited from Cumulator
 
_train(self, *args)
Collect all input data in a list.
 
train(self, *args)
Collect all input data in a list.
    Inherited from Node
 
__add__(self, other)
 
__call__(self, x, *args, **kwargs)
Calling an instance of Node is equivalent to calling its execute method.
 
__repr__(self)
repr(x)
 
__str__(self)
str(x)
 
_check_input(self, x)
 
_check_output(self, y)
 
_check_train_args(self, x, *args, **kwargs)
 
_get_train_seq(self)
 
_if_training_stop_training(self)
 
_inverse(self, x)
 
_pre_execution_checks(self, x)
This method contains all pre-execution checks.
 
_pre_inversion_checks(self, y)
This method contains all pre-inversion checks.
 
_refcast(self, x)
Helper function to cast arrays to the internal dtype.
 
_set_dtype(self, t)
 
_set_input_dim(self, n)
 
_set_output_dim(self, n)
 
copy(self, protocol=None)
Return a deep copy of the node.
 
get_current_train_phase(self)
Return the index of the current training phase.
 
get_dtype(self)
Return dtype.
 
get_input_dim(self)
Return input dimensions.
 
get_output_dim(self)
Return output dimensions.
 
get_remaining_train_phase(self)
Return the number of training phases still to accomplish.
 
get_supported_dtypes(self)
Return dtypes supported by the node as a list of dtype objects.
 
has_multiple_training_phases(self)
Return True if the node has multiple training phases.
 
inverse(self, y, *args, **kwargs)
Invert y.
 
is_training(self)
Return True if the node is in the training phase, False otherwise.
 
save(self, filename, protocol=-1)
Save a pickled serialization of the node to filename. If filename is None, return a string.
 
set_dtype(self, t)
Set internal structures' dtype.
 
set_input_dim(self, n)
Set input dimensions.
 
set_output_dim(self, n)
Set output dimensions.
Static Methods [hide private]
 
is_invertible()
Return True if the node can be inverted, False otherwise.
 
is_trainable()
Return True if the node can be trained, False otherwise.
Properties [hide private]

Inherited from object: __class__

    Inherited from Node
  _train_seq
List of tuples:
  dtype
dtype
  input_dim
Input dimensions
  output_dim
Output dimensions
  supported_dtypes
Supported dtypes
Method Details [hide private]

__init__(self, input_dim=None, output_dim=None, dtype=None, **kwargs)
(Constructor)

 

Encode categorical integer features using a one-hot aka one-of-K scheme.

This node has been automatically generated by wrapping the ``sklearn.preprocessing.data.OneHotEncoder`` class
from the ``sklearn`` library.  The wrapped instance can be accessed
through the ``scikits_alg`` attribute.

The input to this transformer should be a matrix of integers, denoting
the values taken on by categorical (discrete) features. The output will be
a sparse matrix where each column corresponds to one possible value of one
feature. It is assumed that input features take on values in the range
[0, n_values).

This encoding is needed for feeding categorical data to many scikit-learn
estimators, notably linear models and SVMs with the standard kernels.

Read more in the :ref:`User Guide <preprocessing_categorical_features>`.

**Parameters**

n_values : 'auto', int or array of ints
    Number of values per feature.

    - 'auto' : determine value range from training data.
    - int : maximum value for all features.
    - array : maximum value per feature.

categorical_features: "all" or array of indices or mask
    Specify what features are treated as categorical.

    - 'all' (default): All features are treated as categorical.
    - array of indices: Array of categorical feature indices.
    - mask: Array of length n_features and with dtype=bool.

    Non-categorical features are always stacked to the right of the matrix.

dtype : number type, default=np.float
    Desired dtype of output.

sparse : boolean, default=True
    Will return sparse matrix if set True else will return an array.

handle_unknown : str, 'error' or 'ignore'
    Whether to raise an error or ignore if a unknown categorical feature is
    present during transform.

**Attributes**

``active_features_`` : array
    Indices for active features, meaning values that actually occur
    in the training set. Only available when n_values is ``'auto'``.

``feature_indices_`` : array of shape (n_features,)
    Indices to feature ranges.
    Feature ``i`` in the original data is mapped to features
    from ``feature_indices_[i]`` to ``feature_indices_[i+1]``
    (and then potentially masked by `active_features_` afterwards)

``n_values_`` : array of shape (n_features,)
    Maximum number of values per feature.

**Examples**

Given a dataset with three features and two samples, we let the encoder
find the maximum value per feature and transform the data to a binary
one-hot encoding.

>>> from sklearn.preprocessing import OneHotEncoder
>>> enc = OneHotEncoder()
>>> enc.fit([[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]])  # doctest: +ELLIPSIS
OneHotEncoder(categorical_features='all', dtype=<... 'float'>,
       handle_unknown='error', n_values='auto', sparse=True)
>>> enc.n_values_
array([2, 3, 4])
>>> enc.feature_indices_
array([0, 2, 5, 9])
>>> enc.transform([[0, 1, 1]]).toarray()
array([[ 1.,  0.,  0.,  1.,  0.,  0.,  1.,  0.,  0.]])

See also

sklearn.feature_extraction.DictVectorizer : performs a one-hot encoding of
  dictionary items (also handles string-valued features).
sklearn.feature_extraction.FeatureHasher : performs an approximate one-hot
  encoding of dictionary items or strings.

Overrides: object.__init__

_execute(self, x)

 
Overrides: Node._execute

_get_supported_dtypes(self)

 
Return the list of dtypes supported by this node. The types can be specified in any format allowed by numpy.dtype.
Overrides: Node._get_supported_dtypes

_stop_training(self, **kwargs)

 
Concatenate the collected data in a single array.
Overrides: Node._stop_training

execute(self, x)

 

Transform X using one-hot encoding.

This node has been automatically generated by wrapping the sklearn.preprocessing.data.OneHotEncoder class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute.

Parameters

X : array-like, shape [n_samples, n_features]
Input array of type int.

Returns

X_out : sparse matrix if sparse=True else a 2-d array, dtype=int
Transformed input.
Overrides: Node.execute

is_invertible()
Static Method

 
Return True if the node can be inverted, False otherwise.
Overrides: Node.is_invertible
(inherited documentation)

is_trainable()
Static Method

 
Return True if the node can be trained, False otherwise.
Overrides: Node.is_trainable

stop_training(self, **kwargs)

 

Fit OneHotEncoder to X.

This node has been automatically generated by wrapping the sklearn.preprocessing.data.OneHotEncoder class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute.

Parameters

X : array-like, shape [n_samples, n_feature]
Input array of type int.

Returns

self

Overrides: Node.stop_training