class
sklearn.feature_extraction.
DictVectorizer
(
dtype=<class ‘numpy.float64’>
,
separator=’=’
,
sparse=True
,
sort=True
)
Transforms
lists
of feature-value mappings to vectors.
This transformer
turns lists of mappings (dict-like objects
) of feature names to feature values into Numpy
arrays
or scipy.
sparse matrices(稀疏矩阵)
for use with scikit-learn estimators.
When feature values are strings, this transformer will do a binary one-hot (aka one-of-K) coding: one boolean-valued feature is constructed for each of the possible string values that the feature can take on. For instance, a feature “f” that can take on the values “ham” and “spam” will become two features in the output, one signifying “f=ham”, the other “f=spam”.
However, note that this transformer will only do a binary one-hot encoding when feature values are of type string. If categorical features are represented as numeric values such as int, the DictVectorizer can be followed by OneHotEncoder to complete binary one-hot encoding.
Features that do not occur in a sample (mapping) will have a zero value in the resulting array/matrix.
Parameters:
dtype
: callable, optional
The type of feature values. Passed to Numpy array/scipy.sparse matrix constructors as the dtype argument.
separator
: string, optional
Separator string used when constructing new features for one-hot coding.
sparse
: boolean, optional.
Whether transform should produce scipy.sparse matrices. True by default.
sort
: boolean, optional.
Whether
feature_names_
and
vocabulary_
should be sorted when fitting. True by default.
Attributes:
vocabulary_
: dict
A dictionary mapping feature names to feature indices.
feature_names_
: list
A list of length n_features containing the feature names (e.g., “f=ham” and “f=spam”).